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