场景:使用STR_TO_DATE函数和DATE_FORMAT函数
记录:NO.249
体验一下STR_TO_DATE函数和DATE_FORMAT函数。
STR_TO_DATE函数将str转化为日期型的数据,format表示转化后的格式。
DATE_FORMAT函数是根据format指定的格式显示date值。
时间类型转换为字符串
SELECT DATE_FORMAT(SYSDATE(),'%Y-%c-%d %H:%i:%s');
执行结果: 2021-6-20 21:00:06
SELECT DATE_FORMAT(SYSDATE(),'%Y-%m-%d %H:%i:%s');
执行结果: 2021-06-20 21:01:17
SELECT DATE_FORMAT(SYSDATE(),'%Y-%m-%d');
执行结果: 2021-06-20
SELECT DATE_FORMAT(SYSDATE(),'%Y-%m');
执行结果: 2021-06
SELECT DATE_FORMAT(SYSDATE(),'%Y');
执行结果: 2021
字符串转换为时间类型
SELECT STR_TO_DATE('2021-06-21 15:16:29','%Y-%m-%d %H:%i:%s');
执行结果: 2021-06-21 15:16:29
SELECT STR_TO_DATE('2021-06-21 15:16:29','%Y-%m-%d');
执行结果: 2021-06-21
format格式
示例:
SELECT NOW();
执行结果: 2021-06-20 23:14:20
SELECT DATE_FORMAT(SYSDATE(),'%a');
执行结果: Sun
SELECT DATE_FORMAT(SYSDATE(),'%b');
执行结果: Jun
SELECT DATE_FORMAT(SYSDATE(),'%c');
执行结果: 6
SELECT DATE_FORMAT(SYSDATE(),'%D');
执行结果: 20th
SELECT DATE_FORMAT(SYSDATE(),'%d');
执行结果: 20
SELECT DATE_FORMAT(SYSDATE(),'%e');
执行结果: 20
SELECT DATE_FORMAT(SYSDATE(),'%f');
执行结果: 000000
SELECT DATE_FORMAT(SYSDATE(),'%H');
执行结果: 23
SELECT DATE_FORMAT(SYSDATE(),'%h');
执行结果: 11
SELECT DATE_FORMAT(SYSDATE(),'%i');
执行结果: 17
SELECT DATE_FORMAT(SYSDATE(),'%j');
执行结果: 171
SELECT DATE_FORMAT(SYSDATE(),'%k');
执行结果: 23
SELECT DATE_FORMAT(SYSDATE(),'%l');
执行结果: 11
SELECT DATE_FORMAT(SYSDATE(),'%M');
执行结果: June
SELECT DATE_FORMAT(SYSDATE(),'%m');
执行结果: 06
SELECT DATE_FORMAT(SYSDATE(),'%p');
执行结果: PM
SELECT DATE_FORMAT(SYSDATE(),'%r');
执行结果: 11:19:32 PM
SELECT DATE_FORMAT(SYSDATE(),'%S');
执行结果: 02
SELECT DATE_FORMAT(SYSDATE(),'%s');
执行结果: 16
SELECT DATE_FORMAT(SYSDATE(),'%T');
执行结果: 23:20:31
SELECT DATE_FORMAT(SYSDATE(),'%U');
执行结果: 25
SELECT DATE_FORMAT(SYSDATE(),'%u');
执行结果: 24
SELECT DATE_FORMAT(SYSDATE(),'%V');
执行结果: 25
SELECT DATE_FORMAT(SYSDATE(),'%v');
执行结果: 24
SELECT DATE_FORMAT(SYSDATE(),'%W');
执行结果: Sunday
SELECT DATE_FORMAT(SYSDATE(),'%w');
执行结果: 0
SELECT DATE_FORMAT(SYSDATE(),'%X');
执行结果: 2021
SELECT DATE_FORMAT(SYSDATE(),'%x');
执行结果: 2021
SELECT DATE_FORMAT(SYSDATE(),'%Y');
执行结果: 2021
SELECT DATE_FORMAT(SYSDATE(),'%y');
执行结果: 21
SELECT DATE_FORMAT(SYSDATE(),'%%');
执行结果: %