postgresql 函数慢慢积累
1、类似oracle的decode,可以这样写: select (case when order_count = 0 then 1 else order_count end) as oedercount from order 2、类似oracle的NVL方法:coalesce(collect_result,0) 如果collect_result为空,则将其值变成0,否则显示原值 有一个表t1 num | name -----+------ 1 | a 2 | b 3 | c 和t2 num | value -----+------- 1 | xxx 3 | yyy 5 | zzz 例如:SELECT * FROM t1 INNER JOIN t2 USING (num); num | name | value -----+------+------- 1 | a | xxx 3 | c | yyy (2 rows)
4、NATURAL(natural):是USING的缩写形式:它形成一个USING列表, 该列表由那些在两个表里都出现了的字段名字组成。和USING一样,这些字段只在输出表里出现一次 例如:SELECT * FROM t1 NATURAL INNER JOIN t2;
num | name | value -----+------+------- 1 | a | xxx 3 | c | yyy (2 rows)我们再来看下on吧:SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num;num | name | num | value -----+------+-----+------- 1 | a | 1 | xxx 3 | c | 3 | yyy (2 rows)可以看出on,using,natural很相似,on没有剔除输出中的相同字段,而using,natural就去掉了,前提是量表中有相同的字段 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |