本篇文章給大家?guī)?lái)了關(guān)于SQL的相關(guān)知識(shí),其中主要介紹了日期與字符串互相轉(zhuǎn)換操作的相關(guān)內(nèi)容,下面一起來(lái)看一下,希望對(duì)大家有幫助。
千萬(wàn)級(jí)數(shù)據(jù)并發(fā)如何處理?進(jìn)入學(xué)習(xí)
推薦學(xué)習(xí):《SQL教程》
一.Oracle日期和字符串互相轉(zhuǎn)換
1.1 日期轉(zhuǎn)字符串
1.1.1 yyyy年mm月dd日hh24時(shí)mi分ss秒
手動(dòng)拼接年月日
select to_char(sysdate, 'yyyy') || '年' || to_char(sysdate, 'mm') || '月' || to_char(sysdate, 'dd') || '日' || ' ' || to_char(sysdate, 'hh24') || '時(shí)' || to_char(sysdate, 'mi') || '分' || to_char(sysdate, 'ss') || '秒' from dual
結(jié)果
2021年09月08日
1.1.2 yyyy-mm-dd hh24:mi:ss
日期不去掉0,并且以24小時(shí)制顯示
select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') from dual
結(jié)果
2021-09-08 11:12:02
1.1.3 yyyyfm-mm-dd hh24:mi:ss
日期去掉0,并且以24小時(shí)制顯示
select to_char(sysdate, 'yyyyfm-mm-dd hh24:mi:ss') from dual
結(jié)果
2021-9-8 11:21:55
1.1.4 yyyy/mm/dd
只顯示年月日,并且有分隔符
select to_char(sysdate, 'yyyy/mm/dd') from dual
結(jié)果
2021/09/08
1.1.5 yyyymmdd
只顯示年月日,沒有分隔符
select to_char(sysdate, 'yyyymmdd') from dual
結(jié)果
20210908
1.2 字符串轉(zhuǎn)日期
使用to_date(‘日期’, ‘格式’)函數(shù),具體格式和to_char()中的格式相同
select to_date('20210908', 'yyyymmdd') from dual
結(jié)果
2021/09/08 0:00:00
select to_date('2021-9-8 11:21:55', 'yyyyfm-mm-dd hh24:mi:ss') from dual
結(jié)果
2021/09/08 11:21:55
二. SqlServer日期和字符串互相轉(zhuǎn)換
2.1日期轉(zhuǎn)字符串
2.1.1 yyyy/mm/dd
SELECT CONVERT(varchar (100), GETDATE(), 111)
結(jié)果
2021/09/08
2.1.2 yyyy-mm-dd
SELECT CONVERT(varchar (100), GETDATE(), 23)
結(jié)果
2021-09-08
2.1.3 yyyymmdd
SELECT CONVERT(varchar (100), GETDATE(), 112)
結(jié)果
20210908
2.1.4 yyyy-mm-dd hh:mm:ss
SELECT CONVERT(varchar (100), GETDATE(), 120)
結(jié)果
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())) + '日'
結(jié)果
2021年9月8日
2.2 字符串轉(zhuǎn)日期
CAST(‘字符串日期’ as ‘?dāng)?shù)據(jù)類型-一般為date或者datetime’)
如果字符串日期并不是合法的日期的話,會(huì)報(bào)錯(cuò)
TRY_CAST(‘字符串日期’ as ‘?dāng)?shù)據(jù)類型-一般為date或者datetime’)
嘗試將字符串日期轉(zhuǎn)換為日期類型,如果轉(zhuǎn)換失敗的話,會(huì)返回NULL
SELECT CAST('20200908' as datetime)
結(jié)果
2020/09/08 0:00:00
SELECT CAST('20200908' as date)
結(jié)果
2020/09/08
SELECT TRY_CAST('2021-09-08' as datetime)
結(jié)果
2021/09/08 0:00:00
SELECT TRY_CAST('2021/09/08 11:21:55' as datetime)
結(jié)果
2021/09/08 11:21:55
三.Mysql日期和字符串互相轉(zhuǎn)換
參考資料: MySQL中日期時(shí)間類型與格式化
3.1 日期轉(zhuǎn)字符串
DATE_FORMAT( )函數(shù)
3.1.1 yyyy年mm月dd日 hh時(shí)ii分ss秒
SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H時(shí)%i分%s秒' );
結(jié)果
2021年09月08日 21時(shí)04分59秒
3.1.2 yyyy-mm-dd hh:ii:ss
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s')
3.2 字符串轉(zhuǎn)日期
STR_TO_DATE函數(shù)
SELECT STR_TO_DATE('2019年01月17日 19時(shí)05分05秒', '%Y年%m月%d日 %H時(shí)%i分%s秒');
結(jié)果
2019-01-17 19:05:05
推薦學(xué)習(xí):《SQL教程》