繁華開(kāi)滿天機(jī)
2019-07-15 15:52:53
如何在PostgreSQL查詢中聲明變量如何聲明變量以便在PostgreSQL 8.3查詢中使用?在MSSQLServer中,我可以這樣做:DECLARE @myvar INTSET @myvar = 5SELECT *FROM somewhereWHERE something = @myvar如何在PostgreSQL中實(shí)現(xiàn)相同的操作?根據(jù)文檔,變量被簡(jiǎn)單地聲明為“name type;”,但是這給了我一個(gè)語(yǔ)法錯(cuò)誤:myvar INTEGER;有人能給我舉個(gè)正確語(yǔ)法的例子嗎?
3 回答

jeck貓
TA貢獻(xiàn)1909條經(jīng)驗(yàn) 獲得超7個(gè)贊
WITH ()
tuple
WITH master_user AS ( SELECT login, registration_date FROM users WHERE ...)SELECT *FROM usersWHERE master_login = (SELECT login FROM master_user) AND (SELECT registration_date FROM master_user) > ...;

慕后森
TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊
DO $$DECLARE myvar integer;BEGIN SELECT 5 INTO myvar; DROP TABLE IF EXISTS tmp_table; CREATE TABLE tmp_table AS SELECT * FROM yourtable WHERE id = myvar;END $$;SELECT * FROM tmp_table;
以上要求Postgres 9.0或更高版本。
添加回答
舉報(bào)
0/150
提交
取消