PostgreSQLCOALESCE使⽤⽅法代码解析
postgre trunc函数的使用方法
有这种要求,更新⾃⼰本⾝的字段的某个值进⾏加或者减
常规⽅法:
UPDATE
tbl_kintai_print_his
SET
print_time = now(),
print_emp_cd = '000000',
times = (select times from tbl_kintai_print_his where  kokyaku_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'
能实现,不过效率肯定不⾼,要进⾏查询两次
pgsql⾥⾯提供⼀个函数能完成这个操作:
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'
能直接取到上⼀次的结果进⾏添加
⼆:还有⼀种⽤法就是在⼏个字段中取值,从前往后,⼀直取到不为NULL的值为⽌。
select id , name ,coalesce(Ph_no,Alt_no,Office_no) as contact number from employee
我们可以通过这样的语句,来得到Ph_no,Alt_no,Office_no这⼏个字段中,第⼀个不存在null的数值,上⾯的语句得到以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。