MySQL按天排序显示

如果数据库中的存储的时间是11位的时间戳, 先需要转化为日期格式:

from_unixtime(列名,format)

format 格式有:

%Y 年,数字, 4位 
%y 年,数字, 2位 

 

%M 月名字(January……December) 

%m 月,数字(01……12) 
%c 月,数字(1……12) 

%b 缩写的月份名字(Jan……Dec) 


%D 有英语前缀的月份的日期(1st, 2nd, 3rd...) 

%d 月份中的天数,数字(00……31) 
%e 月份中的天数,数字(0……31) 

 

%H 小时(00……23)  24小时制
%k 小时(0……23) 
%h 小时(01……12)  12小时制
%I 小时(01……12) 
%l 小时(1……12) 

 

%i 分钟,数字(00……59) 
%r 时间,12小时(hh:mm:ss [AP]M) 
%T 时间,24小时(hh:mm:ss) 
%S 秒(00……59) 
%s 秒(00……59) 
%p AM或PM 

 

%W 星期名字(Sunday……Saturday) 

%a 缩写的星期名字(Sun……Sat) 

%U 星期(0……52),这里星期天是星期的第一天 
%u 星期(0……52),这里星期一是星期的第一天 


 

例如查询表里用户的每天的做题次数:

select

count(列名) , date_format(from_unixtime(列名),'%Y-%m-%d')  a

from 表名 

group by a 

 

当然,如果只是日期格式,也可以使用date函数:

select

count(列名) , date(from_unixtime(列名))  a

from 表名 

group by a 

查询出来的结果是一样的

 

查询当前时间时间戳: unix_timestamp(now())

查询某个时间的时间戳 unix_timestamp('2019-08-29 18:06:27')

你可能感兴趣的:(MySQL,日期查询)