MySql数据库常用语法实战总结

分享一些工作中常用实战经验,希望对大家有帮助,如有不足,请指出,我会及时补充在文章中,一起进步与成长。

1、null结果排最后;
SELECT sort FROM t_grab_advert_sogou ORDER BY ISNULL(sort),sort ASC

2、count()函数中使用if表达式来实现,当条件满足是表达式的值为非空,条件不满足时表达式值为NULL;
mysql> select count(if(num > 200, 1, null)) from a;
±------------------------------+
| count(if(num > 200, 1, null)) |
±------------------------------+
| 2 |
±------------------------------+
1 row in set (0.05 sec)
————————————————

3、使用case when语句时,如果放在查询的最后,则会sql报错,后面放一个count(*)则能解决问题。

4、时间转字符串
SELECT DATE_FORMAT(MAX(TJSJ), ‘%Y-%m-%d %H:%i:%s’) as JBSJ FROM v_shi_hcstjb

5、字符串转时间
STR_TO_DATE(字符串,日志格式)
SELECT STR_TO_DATE(‘2019-01-20 16:01:45’, ‘%Y-%m-%d %H:%i:%s’);

6、计算保留两位小数
CONVERT(COUNT(if(字段 = “已回复”, 1, null))/COUNT(字段),DECIMAL(15, 2)) as VAL

7、字符串转数字排序
ORDER BY (字段+0)

8、字符串截取
substring(字段,0,2)

9、对于字段值为null的判断
IFNULL(k2.VAL,0)
对于统计函数,如果无统计值默认是null,不做判断否则前端无返回字段。
注意:判断要放在最外层,内层的话,容易被外层值覆盖

10、CASE…WHEN语法
CASE WHEN XQZL = ‘1’ THEN ‘生猪’ WHEN XQZL = ‘2’ THEN ‘奶牛’ end X

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值