文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2022-11-30 23:46

关注

这篇文章主要讲解了“SQL中日期与字符串怎么互相转换”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“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') || '秒' 
from
  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') 
from
  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') 
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 hh34:mi:ss') 
from
  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中日期与字符串怎么互相转换这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯