首页 > 数据库技术 > 详细

mysql排序之ORDER BY IF、ORDER BY配合IN、TIMESTAMPDIFF、TIMESTAMPADD、FIELD

时间:2019-03-07 17:08:56      阅读:204      评论:0      收藏:0      [点我收藏+]

1、order by if 排序

SELECT * FROM pet ORDER BY if (species=‘snake‘,0,1),species;--species为snake的行数放置到了查询结果开头,再按照spercies排序;snake的这一行放在查询结果尾部用SELECT * FROM pet ORDER BY if(species=‘snake‘,0,1) DESC,species,默认是ASC,可以不写

技术分享图片

2、order by配合in

SELECT * FROM pet ORDER BY birth IN(‘1993-02-04‘,‘1989-05-13‘),birth;

技术分享图片

3、TIMESTAMPDIFF计算两个日期的时间差函数

SELECT TIMESTAMPDIFF(SECOND,‘2009-12-01 09:00:00‘,‘2009-12-01 09:00:50‘); --FRAC_SECOND毫秒,SECOND秒,MINUTE分钟,HOUR小时,DAY天,WEEK星期,MONTH月,QUARTER季度,YEAR年

技术分享图片

4、TIMESTAMPADD将时间差添加到日期时间表达式中

SELECT TIMESTAMPADD(SECOND,50,‘2009-12-01 09:00:00‘);

技术分享图片

5、FIELD可以用来对SQL中查询结果集进行指定顺序排序

order by (str,str1,str2,str3,str4……),str与str1,str2,str3,str4比较,其中str指的是字段名字,如果表中str字段值不存在于str1,str2,str3,str4中的记录,放在结果集最前面返回。

技术分享图片

 

 

 

mysql排序之ORDER BY IF、ORDER BY配合IN、TIMESTAMPDIFF、TIMESTAMPADD、FIELD

原文:https://www.cnblogs.com/skj0330insn/p/10469577.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!