SQL中日期与字符串怎么互相转换

61次阅读
没有评论

共计 2271 个字符,预计需要花费 6 分钟才能阅读完成。

这篇文章主要讲解了“SQL 中日期与字符串怎么互相转换”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“SQL 中日期与字符串怎么互相转换”吧!

一.Oracle 日期和字符串互相转换 1.1 日期转字符串 1.1.1 yyyy 年 mm 月 dd 日 hh34 時 mi 分 ss 秒

手动拼接年月日

select
 to_char(sysdate,  yyyy) ||  年  
 || to_char(sysdate,  mm) ||  月  
 || to_char(sysdate,  dd) ||  日 
 ||    
 || to_char(sysdate,  hh34) ||  時  
 || to_char(sysdate,  mi) ||  分  
 || to_char(sysdate,  ss) ||  秒  
 dual

结果

2021 年 09 月 08 日

1.1.2 yyyy-mm-dd hh34:mi:ss

日期不去掉 0, 并且以 24 小时制显示

select
 to_char(sysdate,  yyyy-mm-dd hh34:mi:ss) 
 dual

结果

2021-09-08 11:12:02

1.1.3 yyyyfm-mm-dd hh34:mi:ss

日期去掉 0, 并且以 24 小时制显示

select
 to_char(sysdate,  yyyyfm-mm-dd hh34:mi:ss) 
 dual

结果

2021-9-8 11:21:55

1.1.4 yyyy/mm/dd

只显示年月日, 并且有分隔符

select
 to_char(sysdate,  yyyy/mm/dd) 
 dual

结果

2021/09/08

1.1.5 yyyymmdd

只显示年月日, 没有分隔符

select
 to_char(sysdate,  yyyymmdd) 
 dual

结果

20210908

1.2 字符串转日期

使用 to_date(‘日期’,‘格式’) 函数, 具体格式和 to_char() 中的格式相同

select
 to_date(20210908 ,  yyyymmdd) 
 dual

结果

2021/09/08 0:00:00

select
 to_date(2021-9-8 11:21:55 ,  yyyyfm-mm-dd hh34:mi:ss) 
 dual

结果

2021/09/08 11:21:55

二. SqlServer 日期和字符串互相转换 2.1 日期转字符串 2.1.1 yyyy/mm/dd

SELECT
 CONVERT(varchar (100), GETDATE(), 111)

结果

2021/09/08

2.1.2 yyyy-mm-dd

SELECT
 CONVERT(varchar (100), GETDATE(), 23)

结果

2021-09-08

2.1.3 yyyymmdd

SELECT
 CONVERT(varchar (100), GETDATE(), 112)

结果

20210908

2.1.4 yyyy-mm-dd hh:mm:ss

SELECT
 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 秒

SELECT
 DATE_FORMAT(NOW(),  %Y 年 %m 月 %d 日  %H 时 %i 分 %s 秒  );

结果

2021 年 09 月 08 日 21 时 04 分 59 秒

3.1.2 yyyy-mm-dd hh:ii:ss

SELECT
 DATE_FORMAT(NOW(),  %Y-%m-%d %H:%i:%s )

3.2 字符串转日期

STR_TO_DATE 函数

SELECT
 STR_TO_DATE(2019 年 01 月 17 日  19 时 05 分 05 秒 ,  %Y 年 %m 月 %d 日  %H 时 %i 分 %s 秒 

结果

2019-01-17 19:05:05

感谢各位的阅读,以上就是“SQL 中日期与字符串怎么互相转换”的内容了,经过本文的学习后,相信大家对 SQL 中日期与字符串怎么互相转换这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-13发表,共计2271字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)