MYSQL小记,SQL查询,如果有更新时间则优先按更新时间倒序,没有则按创建时间倒序

MYSQL日常小记

MySQL日常记录

今天遇到上述标题的一个业务场景,经过自己一系列操作,得出实现结论如下:

select now() from dual ORDER BY IFNULL(update_date,create_date) DESC
  1. IFNULL 函数说明
  2. IFNULL(expr1,expr2)
    如果 expr1 不是 NULL,IFNULL() 返回 expr1,否则它返回 expr2
  3. mysql中的if()函数使用,
    格式 :IF(tableColumn,A,B)–>当tableColumn为TRUE时,返回A;当tableColumn为FALSE时,返回B。
select if((5-3>0),'OK','NotOK')AS testF from dual
  1. Mysql中类型为int的字段,可以接受插入java层面为String类型的VO字段.
  2. MYSQL左连接文献:https://www.cnblogs.com/bluedeblog/p/6654065.html
需关注点: 1select * form tab1 left join tab2 on (tab1.size = tab2.size) where tab2.name=’AAA’
2select * form tab1 left join tab2 on (tab1.size = tab2.size and tab2.name=’AAA’)
  1. group_concat非常规使用:

1.以id分组,把去冗余的name字段的值打印在一行

select id,group_concat(name order by name desc) from aa group by id;

2.以id分组,把name字段的值打印在一行,逗号分隔,以name排倒序

select id,group_concat(distinct name) from aa group by id;

3.给账号前、后都加0 后,以 ‘+’ 号分隔

SELECT GROUP_CONCAT('0',xxxacount SEPARATOR '+')  FROM `testTable;

SELECT id, GROUP_CONCAT(xxxacount,0 SEPARATOR '+') FROM `testTable` GROUP BY id;
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值