目录一.Oracle日期和字符串互相转换1.1 日期转字符串1.1.1 yyyy年mm月dd日hh24時mi分ss秒1.1.2 yyyy-mm-dd hh24:mi:ss1.1.3 yyyyfm-mm-dd hh24:mi:ss1.1.4 yyyy/mm/dd1.1.5 yyyymmdd1.2 字符串转日期二. SqlServer日期和字符串互相转换2.1日期转字符串2.1.1 yyyy/mm/dd2.1.2 yyyy-mm-dd2.1.3 yyyymmdd2.1.4 yyyy-mm-dd hh:mm:ss2.1.5 yyyy年mm月dd日2.2 字符串转日期三.Mysql日期和字符串互相转换3.1 日期转字符串3.1.1 yyyy年mm月dd日 hh时ii分ss秒3.1.2 yyyy-mm-dd hh:ii:ss3.2 字符串转日期总结
一.Oracle日期和字符串互相转换
1.1 日期转字符串
1.1.1 yyyy年mm月dd日hh24時mi分ss秒
手动拼接年月日
select to_char(sysdate, \’yyyy\’) || \’年\’ || to_char(sysdate, \’mm\’) || \’月\’ || to_char(sysdate, \’dd\’) || \’日\’ || \’ \’ || to_char(sysdate, \’hh24\’) || \’時\’ || to_char(sysdate, \’mi\’) || \’分\’ || to_char(sysdate, \’ss\’) || \’秒\’ from dual
⏹结果
2021年09月08日
1.1.2 yyyy-mm-dd hh24:mi:ss
日期不去掉0,并且以24小时制显示
select to_char(sysdate, \’yyyy-mm-dd hh24:mi:ss\’) from dual
⏹结果
2021-09-08 11:12:02
1.1.3 yyyyfm-mm-dd hh24:mi:ss
日期去掉0,并且以24小时制显示
select to_char(sysdate, \’yyyyfm-mm-dd hh24:mi:ss\’) from dual
⏹结果
2021-9-8 11:21:55
1.1.4 yyyy/mm/dd
只显示年月日,并且有分隔符
select to_char(sysdate, \’yyyy/mm/dd\’) from dual
⏹结果
2021/09/08
1.1.5 yyyymmdd
只显示年月日,没有分隔符
select to_char(sysdate, \’yyyymmdd\’) from dual
⏹结果
20210908
1.2 字符串转日期
使用to_date(‘日期’, ‘格式’)函数,具体格式和to_char()中的格式相同
select to_date(\’20210908\’, \’yyyymmdd\’) from dual
⏹结果
2021/09/08 0:00:00
select to_date(\’2021-9-8 11:21:55\’, \’yyyyfm-mm-dd hh24:mi:ss\’) from dual
⏹结果
2021/09/08 11:21:55
二. SqlServer日期和字符串互相转换
2.1日期转字符串
2.1.1 yyyy/mm/ddSELECT CONVERT(varchar (100), GETDATE(), 111)
⏹结果
2021/09/08
2.1.2 yyyy-mm-ddSELECT CONVERT(varchar (100), GETDATE(), 23)
⏹结果
2021-09-08
2.1.3 yyyymmddSELECT CONVERT(varchar (100), GETDATE(), 112)
⏹结果
20210908
2.1.4 yyyy-mm-dd hh:mm:ssSELECT CONVERT(varchar (100), GETDATE(), 120)
⏹结果
2021-09-08 12:30:33
2.1.5 yyyy年mm月dd日select CONVERT(varchar, DATEPART(yy, GETDATE())) + \’年\’ + CONVERT(varchar, DATEPART(mm, GETDATE())) + \’月\’ + CONVERT(varchar, DATEPART(dd, GETDATE())) + \’日\’
⏹结果
2021年9月8日
2.2 字符串转日期
⭕ CAST(‘字符串日期’ as ‘数据类型-一般为date或者datetime’)
如果字符串日期并不是合法的日期的话,会报错
⭕ TRY_CAST(‘字符串日期’ as ‘数据类型-一般为date或者datetime’)
尝试将字符串日期转换为日期类型,如果转换失败的话,会返回NULL
SELECT CAST(\’20200908\’ as datetime)
⏹结果
2020/09/08 0:00:00
SELECT CAST(\’20200908\’ as date)
⏹结果
2020/09/08
SELECT TRY_CAST(\’2021-09-08\’ as datetime)
⏹结果
2021/09/08 0:00:00
SELECT TRY_CAST(\’2021/09/08 11:21:55\’ as datetime)
⏹结果
2021/09/08 11:21:55
三.Mysql日期和字符串互相转换
参考资料: MySQL中日期时间类型与格式化
3.1 日期转字符串
DATE_FORMAT( )函数
3.1.1 yyyy年mm月dd日 hh时ii分ss秒SELECTDATE_FORMAT(NOW(), \’%Y年%m月%d日 %H时%i分%s秒\’ );
⏹结果
2021年09月08日 21时04分59秒
3.1.2 yyyy-mm-dd hh:ii:ssSELECTDATE_FORMAT(NOW(), \’%Y-%m-%d %H:%i:%s\’)
3.2 字符串转日期
STR_TO_DATE函数
SELECTSTR_TO_DATE(\’2019年01月17日 19时05分05秒\’, \’%Y年%m月%d日 %H时%i分%s秒\’);
⏹结果
2019-01-17 19:05:05
总结
到此这篇关于SQL中日期与字符串互相转换操作的文章就介绍到这了,更多相关SQL日期和字符串互相转换内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!