今天拉数据发现个问题,我按照每月的每天来查询数据后发现数据排序是不能从1-31的排序规则排序的,而是1后接10-19,然后2后接20-29,很奇怪的现象,上图:
代码为:select count(*) as 激活数,DATE_FORMAT(a.active_time,'%e') as 日期 from app_ads_record a
where DATE_FORMAT(a.active_time,'%m')='02' AND a.ak="aisi"
group by 日期
ORDER BY 日期
后来想想是不是排序按照的是日期排序,给它转换成数字就能排序了,无意之间给日期加个1后
代码:select count(*) as 激活数,DATE_FORMAT(a.active_time,'%e') as 日期 from app_ads_record a
where DATE_FORMAT(a.active_time,'%m')='02' AND a.ak="aisi"
group by 日期
ORDER BY (日期+1)
因为采用%e的截取方式是按照月的每天截取的,会去掉0(比如01会显示1)所以还有种方法就是将DATE_FORMAT(a.active_time,'%e')中的%e换成%d就能出正确排序结果了