最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

postgresql SQL語句變量的使用說明

 更新時間:2021年01月16日 11:22:42   作者:dazuiba008  
這篇文章主要介紹了postgresql SQL語句變量的使用說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

一般變量使用我們都是放在函數(shù)里面,這里開發(fā)需求,要在SQL直接使用變量,方便查找一些問題,比如時間變量,要根據(jù)時間進行篩選

這里有三種方法可以實現(xiàn)

1.psql命令使用變量

表數(shù)據(jù)如下:

hank=> select * from tb2;
 c1 | c2  |       c3       
----+-------+----------------------------
 1 | hank | 2018-02-06 10:08:00.787503
 2 | dazui | 2018-02-06 10:08:08.542481
 3 | wahah | 2018-02-06 10:08:15.468527
 4 | aaaaa | 2018-02-06 10:18:39.289523

SQL文本如下

cat hank.sql 
select * from tb2 where c2=:name and c3>=:time;

通過psql查看

psql -v name="'hank'" -v time="'2018-02-06 10:08:00'" -f hank.sql
 c1 | c2 |       c3       
----+------+----------------------------
 1 | hank | 2018-02-06 10:08:00.787503

或者

 psql -v name="'hank'" -v time="'2018-02-06 10:08:00'" -c '\i hank.sql'
 c1 | c2 |       c3       
----+------+----------------------------
 1 | hank | 2018-02-06 10:08:00.787503

效果一樣

2.\set使用變量

hank=> \set name hank
hank=> \set time '2018-02-06 10:09:00'  
hank=> select * from tb2 where c2=:'name' and c3>=:'time';
 c1 | c2 |       c3       
----+------+----------------------------
 1 | hank | 2018-02-06 10:08:00.787503

3.通過定義參數(shù)實現(xiàn)

設置一個session級別的參數(shù),通過current_setting取值

hank=> set session "asasd.time" to "2018-02-06 10:09:00"; 
SET
hank=> select * from tb2 where c3 >= current_setting('asasd.time')::timestamp;
 c1 | c2  |       c3       
----+-------+----------------------------
 4 | aaaaa | 2018-02-06 10:18:39.289523
(1 row)

補充:postgresql存儲函數(shù)/存儲過程用sql語句來給變量賦值

--定義變量
a numeric;

方式一:

select sqla into a from table1 where b = '1' ;  --這是sql語句賦值

方式二:

sql1:= 'select a from table1 where b = ' '1' ' ';
execute sql1 into a; --這是執(zhí)行存儲函數(shù)賦值

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關文章

最新評論

西乌珠穆沁旗| 天门市| 噶尔县| 麻城市| 获嘉县| 嵊泗县| 云林县| 镇安县| 嘉兴市| 饶平县| 绥阳县| 循化| 分宜县| 秀山| 延安市| 福贡县| 文昌市| 遂昌县| 赣州市| 苏尼特右旗| 临桂县| 湘潭县| 长兴县| 高雄县| 双鸭山市| 澄江县| 成都市| 江永县| 林西县| 中西区| 兰州市| 连云港市| 大连市| 隆安县| 常熟市| 南召县| 锡林浩特市| 大厂| 开鲁县| 莱州市| 瑞昌市|