sql >> Databáze >  >> RDS >> PostgreSQL

PostgreSQL - Funkce s lokálními proměnnými - Odkaz na sloupec je nejednoznačný

Libovolná lokální proměnná může být kvalifikována štítkem bloku

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

Obvykle všechny možné konfliktní lokální proměnné mají prefix - společný prefix je _ .



  1. Laravel nemůže použít mysql_real_escape_string()

  2. Mariadb sql soubor do mysql

  3. HOUR() vs EXTRACT(HOUR …) v MariaDB:Jaký je rozdíl?

  4. Přidání indexu na velkou tabulku trvá věčnost