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

MYSQL日常小记

  • 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;

你可能感兴趣的:(MYSQL,mysql)