PL/pgSQL aktivieren Sie in ein array

Hier ist meine Funktion Erklärung und ein Teil des Körpers:

CREATE OR REPLACE FUNCTION access_update()
RETURNS void AS $$
DECLARE team_ids bigint[];
BEGIN
    SELECT INTO team_ids "team_id" FROM "tmp_team_list";

    UPDATE "team_prsnl"
    SET "updt_dt_tm" = NOW(), "last_access_dt_tm" = NOW()
    WHERE "team_id" IN team_ids;
END; $$ LANGUAGE plpgsql;

Möchte ich team_ids auf ein array von ints, die ich dann nutzen kann in der UPDATE - Anweisung. Diese Funktion gibt mir Fehler wie diese:

psql:functions.sql:62: ERROR:  syntax error at or near "team_ids"
LINE 13:  AND "team_id" IN team_ids;
  • Ich denke, du hast die Reihenfolge falsch in Ihr wählen Sie. Sollte das nicht heissen: SELECT team_id INTO team_ids FROM tmp_team_list;
InformationsquelleAutor nnyby | 2012-07-31
Schreibe einen Kommentar