Sql语句中时间转换问题
因这段时间一直在做报表记录下用到的一些sql中时间转换的函数
一、毫秒值转换成日期
SELECT
FROM_UNIXTIME(t.csrq/1000,'%Y-%m-%d %h:%i:%s') AS stu_date
FROM
tjry t
WHERE t.rybm='ec6f0e85-2f0b-4493-bbe0-253f6744121c'
t.cjsj是为毫秒值
转换的结果:2020-05-23 12:35:07
二、TIMESTAMPDIFF时间的使用比如获取年龄
如果要获取天数直接将YEAR 改成DAY就行了
SELECT
IF(TIMESTAMPDIFF(YEAR,DATE_FORMAT(tjry.cjsj,'%Y-%m-%d'),DATE_FORMAT(CURDATE(),'%Y-%m-%d'))=0,1,TIMESTAMPDIFF(YEAR,DATE_FORMAT(tjry.cjsj,'%Y-%m-%d'),DATE_FORMAT(CURDATE(),'%Y-%m-%d')))
AS age
FROM
tjry
WHERE tjry.rybm='ec6f0e85-2f0b-4493-bbe0-253f6744121c'