4
我使用PostgreSQL 9.3並寫了如下的功能:PostgreSQL的分配選擇查詢變量的函數
create or replace function test(building text,floor text) returns void as $$
Declare
id integer;
num integer := 0;
Begin
num=num+100
id :=select to_number(
(select
(select code from buildings where name=building) || floor
|| (select num::text)),'99999999'
);
update table set col1=id;
End;
$$
language plpgsql;
我想到的是,我的id
變量將從select to_number(...)
分配一個數值example: 12502100
查詢。
但是我得到了下面的錯誤
ERROR: syntax error at or near ":="
LINE 10: source :=(select code from buildings where name='I3')
我怎麼可以指定查詢結果(有一些字符串操作)爲變量ID?
我也用Select Into id...
方法失敗。
你的第二種方法給了我錯誤「不匹配的括號在或接近」)「」,第一種方法正在工作。 – Xianlin
@Xianlin:對不起,修正了一個括號 –
你怎麼用多個變量和一個陳述來做到這一點?即你想用(SELECT field1,field2 FROM buildings WHERE name = building)填充var1和var2; var1應該包含field1結果,var2應該包含field2結果。 – thames