sql常用语句

Posted 大九

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql常用语句相关的知识,希望对你有一定的参考价值。

1.查询同一个字段不同种类下的数据:

case语句、round(X,2)表示X保留2位小数、FROM_UNIXTIME(data_time,‘%y-%m-%d‘)格式化时间

SELECT 
    FROM_UNIXTIME(data_time,%y-%m-%d)AS sj,
    SUM(ROUND(data_size/1024,2))total,
    SUM(CASE WHEN data_type=01 THEN ROUND(data_size/1024,2) END) 11,
    SUM(CASE WHEN data_type=02 THEN ROUND(data_size/1024,2) END) 22,
    SUM(CASE WHEN data_type=03 THEN ROUND(data_size/1024,2) END)33
FROM t_traffic_data_amount
GROUP BY sj
ORDER BY sj DESC;

2.查询2张表

left join XX on XX 

SELECT
  t_traffic_device_epolice.qymc,
  SUM(t_traffic_illegal.wfsl) wfzs,
  FROM_UNIXTIME(t_traffic_illegal.wfsd,%y-%m-%d) sj
FROM
  t_traffic_illegal
LEFT JOIN t_traffic_device_epolice ON t_traffic_illegal.sbbh=t_traffic_device_epolice.sbbm
WHERE t_traffic_device_epolice.qymc IS NOT NULL
GROUP BY t_traffic_device_epolice.qymc
ORDER BY sj DESC

3.格式化时间

时分格式:

FROM_UNIXTIME( aa, %H:%i )

年月日时分秒格式:

FROM_UNIXTIME(t_traffic_congestion .tjsj,%Y/%m/%d %H%i%s)

4.限制查询结果的条数

查询10条数据:

LIMIT 10

5.条件查询

先格式化时间为小时的格式

再判断是否在7点和8点之间

如果在,就输出

t_traffic_point_speed.pjcs
如果不在,就输出0
IFNULL(ROUND(AVG(CASE WHEN FROM_UNIXTIME(t_traffic_point_speed.tjsj,%H) IN(7,8) THEN t_traffic_point_speed.pjcs END),2),0) clsd_zgf

6.分组

ORDER BY sj DESC     #以sj为分组倒序排序

7.1=1,1=2的使用,在SQL语句组合时用的较多 “where 1=1” 是表示选择全部 “where 1=2”全部不选

以上是关于sql常用语句的主要内容,如果未能解决你的问题,请参考以下文章

面试常用的代码片段

Mybatis动态sql技术

sql语句中嵌套时候用in 和=有啥区别

sql语句 嵌套查询 排序

MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段

[AndroidStudio]_[初级]_[配置自动完成的代码片段]