日期时间函数 mysql 和sqlserver 中对于常用函数的日期和时间函数的区别

1. sqlserver中获取时间用getdate(),默认返回格式是2019-01-21 13:58:33.053,具体的年月日,时分秒毫米,年月日之间用短线连接,时分秒之间用冒号连接,秒和毫米之间用点号连接

2. mysql中没有getdate()函数,常用sysdate()和now()函数,获取日期+时间

3. 在上述mysql获取时间的4个函数中,sqlserver对current_timestamp也有定义,返回时间格式2019-01-21 13:58:33.053

4. mysql中now()函数和sysdate()的区别

眨眼看上去都是一样返回了日期和时间,精确到秒,年月日之间用短线连接,时分秒之间用冒号连接

通过sleep()函数延迟了一秒之后,发现now() 是在查询开始时刻则计算了时间,而sysdate()是动态获取时间

 5.  mysql中日期按指定格式返回,用到date_format(date,format);时间按照指定格式返回,用到time_format(time,format)

6.  mysql 中常见的字符串转换成日期和时间的函数,时分秒中注意下大写H和小写h的区别。H可表示24进制的小时,h表示12进制的小时

7. 日期转换成天数,to_days()

8. 天数转换成日期,from_days()

select str_to_date('01/21/2019', '%m/%d/%Y'); -- 2019-01-21
select str_to_date('01/21/19' , '%m/%d/%y'); -- 2019-01-21
select str_to_date('01.21.2019', '%m.%d.%Y'); -- 2019-01-21
select str_to_date('14:27:30', '%H:%i:%s'); -- 14:27:30
select str_to_date('02:27:30', '%h:%i:%s'); -- 02:27:30
select str_to_date('11:27:30', '%h:%i:%s'); -- 11:27:30
select str_to_date('01.21.2019 14:27:30', '%m.%d.%Y %H:%i:%s'); -- 2019-01-21 14:27:30



select to_days('0000-00-00'); -- 0
select to_days('2019-01-21'); -- 737445
select from_days(737445); -- 2019-01-21
select from_days(0); -- 0000-00-00

  

猜你喜欢

转载自www.cnblogs.com/qianjinyan/p/10298441.html
今日推荐