COALESCE如何正确的在PostgreSQL中使用
生活随笔
收集整理的這篇文章主要介紹了
COALESCE如何正确的在PostgreSQL中使用
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
COALESCE如何正確的在PostgreSQL中使用?針對這個(gè)問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。
有這種要求,更新自己本身的字段的某個(gè)值進(jìn)行加或者減
常規(guī)方法:
UPDATE tbl_kintai_print_his SET print_time=now(), print_emp_cd='000000', times=(selecttimesfromtbl_kintai_print_hiswherekokyaku_cd='000002'AND sagyo_ymd='2015-01-30') +1, pattern='055', ko_item_1='no.0', ko_item_2='no.2', ko_item_3='no.3', ko_item_4='no.4', ko_item_5='no.5' WHERE kokyaku_cd='000002'AND sagyo_ymd='2015-01-30'
能實(shí)現(xiàn),不過效率肯定不高,要進(jìn)行查詢兩次
pgsql里面提供一個(gè)函數(shù)能完成這個(gè)操作:
UPDATE tbl_kintai_print_his SET print_time=now(), print_emp_cd='000000', times=COALESCE(SUM(times),0)+1, pattern='055', ko_item_1='no.0', ko_item_2='no.2', ko_item_3='no.3', ko_item_4='no.4', ko_item_5='no.5' WHERE kokyaku_cd='000002'AND sagyo_ymd='2015-01-30'
能直接取到上一次的結(jié)果進(jìn)行添加
二:還有一種用法就是在幾個(gè)字段中取值,從前往后,一直取到不為NULL的值為止。
select id , name ,coalesce(Ph_no,Alt_no,Office_no) as contact number from employee
我們可以通過這樣的語句,來得到Ph_no,Alt_no,Office_no這幾個(gè)字段中,第一個(gè)不存在null的數(shù)值,上面的語句得到
總結(jié)
以上是生活随笔為你收集整理的COALESCE如何正确的在PostgreSQL中使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jquery.MultiFile 实现自
- 下一篇: 如何解决wps表格下拉数字无法递增的问题