sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL - Functie met lokale variabelen - Kolomverwijzing is dubbelzinnig

Elke lokale variabele kan worden gekwalificeerd door bloklabel

create table foo(a integer);
insert into foo values(10);

do $$
<<mylabel>>
declare
  a int default 5;
  r record;
begin
  select foo.a into r
    from foo
    where foo.a = mylabel.a + 5;
  raise notice '%', r.a;
end;
$$;
NOTICE:  10
DO

Gewoonlijk hebben alle mogelijke lokale conflictvariabelen een voorvoegsel - een algemeen voorvoegsel is _ .



  1. Hoe zou u de variantie van gegevensvariabelen op een gemeenschappelijk schema modelleren? SQL

  2. MySQL-tijdstempel naar Java-datumconversie

  3. ORA-01654:kan index niet uitbreiden

  4. Tabellen weergeven in SQLite-database in Python