目录
PostgreSQL
写的不是非常的详细,建议还是自己测试,试过才知道怎么用。
常规
union all 多表结果合并
left join 左关联
group by 分组
ROUND 小数位控制
将num保留一位小数
ROUND(num,1) num
CAST 格式调整
将num转为数字格式4为长度保留一位小数
CAST(num AS DECIMAL(4,1))
COALESCE null处理
如果num为null,结果为0
COALESCE(num,0)
SUBSTR 数据截取
截取code从第1个开始6个长度的字符
SUBSTR(code || '',1,6)
RANK 排名函数
按num排序,rank为具体的排序序号
select RANK() OVER( ORDER BY NUM ) AS rank
相同的数据不占据序号
select DENSE_RANK() OVER ( ORDER BY NUM ) AS rank
TO_CHAR 时间格式化
to_char(time, 'YYYY-MM-DD HH24:MI:SS')
CASE WHEN 判断
如果num等于1结果时1否则结果时0
CASE WHEN num = 1 THEN 1 ELSE 0 END
获取随机数据
查询table下随机的10条数据
select * from table_name.tables order by random() limit 10
查询出现过几次的数据
查询table下name字段中出现过两次相同值的数据
select name from table_name group by name having count(1)=2
查询表名
查询某个schema下的所有表名
select table_name from information_schema.tables where table_schema = 'schema的名称'