mysql、postgresql常用关键字
updating from fuyuaaa
目录
通用
- case
case when 条件 then 结果 end
例子:
count(distinct(case when a > 0 then b end))
--统计a>0时,b的数量
- join
inner join
-- 内连接,只连接匹配的行,即两表交集
left join
-- 返回左表的全部行和右表满足ON条件的行,如果左表的行在右表中没有匹配,那么这一行右表中对应数据用NULL代替。
right join
-- 返回右表的全部行和左表满足ON条件的行,如果右表的行在左表中没有匹配,那么这一行左表中对应数据用NULL代替。
差异
round
- mysql
round(a/b,4)
--保留4位小数
- postgresql
round(a/b::numeric,4)
--a/b保留4位小数
string 和 aray 之间转换
- mysql 没有array这个概念
- postgresql
string_to_array(*,"/")
--将string * 以/分隔开,放入array,下标1开始
array_to_string(array,"/")
-- 将array组合成string,中间加/
array(select name from user)
--将查询出的name放入array数组