mysql时间戳转换日期格式

mysql时间戳转换日期格式,第1张

时间戳转时间

mysql>select from_unixtime(1604730123)

+---------------------------+

| from_unixtime(1604730123) |

+---------------------------+

| 2020-11-07 14:22:03       |

+---------------------------+

1 row in set (0.02 sec)

时间戳格式化

mysql>SELECT from_unixtime(1604730123, '%Y-%m-%d %H:%i:%S')

+------------------------------------------------+

| from_unixtime(1604730123, '%Y-%m-%d %H:%i:%S') |

+------------------------------------------------+

| 2020-11-07 14:22:03                                      |

+------------------------------------------------+

1 row in set (0.00 sec)

函数:FROM_UNIXTIME

作用:将MYSQL中以INT(11)存储的时间以"YYYY-MM-DD"格式来显示。

语法:FROM_UNIXTIME(unix_timestamp,format)

返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。

根据format字符串格式化date值。

下列修饰符可以被用在format字符串中:

%M 月名字(January……December)

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

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

%Y 年, 数字, 4 位

%y 年, 数字, 2 位

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

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

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

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

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

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

%j 一年中的天数(001……366)

%H 小时(00……23)

%k 小时(0……23)

%h 小时(01……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 一个星期中的天数(0=Sunday ……6=Saturday )

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

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

%% 一个文字“%”。

做一个学校项目的时候 要根据上中晚查询 最后用的是

date_format(t1.record_time, '%H:%i:%s')  

SELECT t2.class_name,t1.class_no,t1.course_id,t1.course_name,t1.id,t1.pic_url,t1.record_time,t1.sign_day,t1.status,t1.student_name,t1.student_no FROM t_e_sign t1 LEFT JOIN t_e_sys_org t2 ON t2.org_code = t1.class_no WHERE IF (:studentName is not null, t1.student_name LIKE CONCAT('%',:studentName,'%') , 1 = 1) and IF (:className is not null, t2.class_name LIKE CONCAT('%',:className,'%') , 1 = 1) and IF (:startTime is not null, date_format(t1.record_time, '%Y-%m-%d') >=:startTime , 1 = 1) and IF (:endTime is not null, date_format(t1.record_time, '%Y-%m-%d') <=:endTime , 1 = 1) and IF (:startdetailTime is not null, date_format(t1.record_time, '%H:%i:%s') >=:startdetailTime , 1 = 1) and IF (:enddetailTime is not null, date_format(t1.record_time, '%H:%i:%s') <=:enddetailTime , 1 = 1) ORDER BY ?#{#pageable}", 

整个语句也写下吧

通过sql语句查询下

看看现在的值

show

variables

like

'%date%'

默认的值是:

date_format=

%Y-%m-%d

datetime_format=%Y-%m-%d

%H:%i:%s

然后在mysql的配置文件my.cnf

或者

my.ini中

加入

[mysqld]

date_format=

%Y/%m/%d

datetime_format=%Y/%m/%d

%H:%i:%s

最后mysql服务器重启即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7452333.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存