SQL中日期与字符串互相转换操作实例

 更新时间:2022年10月27日 10:06:21   作者:fengyehongWorld  
我们经常出于某种目的需要使用各种各样的日期格式,当然我们可以使用字符串操作来构造各种日期格式,下面这篇文章主要给大家介绍了关于SQL中日期与字符串互相转换操作的相关资料,需要的朋友可以参考下

一.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/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日期和字符串互相转换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 查看MySQL的错误日志的方法

    查看MySQL的错误日志的方法

    我们经常在运行MySQL时会出一些错误,也经常被这些错误搞得晕头转向。当然解决这些问题的首要任务是找到日志信息。
    2010-07-07
  • MySQL避免插入重复记录的方法

    MySQL避免插入重复记录的方法

    这篇文章主要介绍了MySQL避免插入重复记录的方法,需要的朋友可以参考下
    2023-10-10
  • innodb_index_stats导入备份数据时报错表主键冲突的解决方法

    innodb_index_stats导入备份数据时报错表主键冲突的解决方法

    下面小编就为大家带来一篇innodb_index_stats导入备份数据时报错表主键冲突的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • MySQL分页Limit的优化过程实战

    MySQL分页Limit的优化过程实战

    在mysql中进行分页查询时,一般会使用limit查询,下面这篇文章主要给大家介绍了关于MySQL分页Limit优化的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-09-09
  • mysql高效查询left join和group by(加索引)

    mysql高效查询left join和group by(加索引)

    这篇文章主要给大家介绍了关于mysql高效查询left join和group by,这个的前提是加了索引,以及如何在MySQL高效的join3个表 的相关资料,需要的朋友可以参考下
    2021-06-06
  • 深入sql多表差异化联合查询的问题详解

    深入sql多表差异化联合查询的问题详解

    本篇文章是对sql多表差异化联合查询的问题进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • MySQL处理JSON常见函数的使用

    MySQL处理JSON常见函数的使用

    这篇文章主要介绍了MySQL处理JSON常见函数的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Linux 安装JDK Tomcat MySQL的教程(使用Mac远程访问)

    Linux 安装JDK Tomcat MySQL的教程(使用Mac远程访问)

    这篇文章主要介绍了Linux 安装JDK Tomcat MySQL(使用Mac远程访问),本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-06-06
  • Mysql5.7在Centos6中的安装方法

    Mysql5.7在Centos6中的安装方法

    这篇文章主要介绍了Mysql5.7在Centos6中的安装方法,需要的朋友可以参考下
    2017-06-06
  • 浅谈MySQL之select优化方案

    浅谈MySQL之select优化方案

    我们是否看到过在公司中许多查询语句都是select * xxxx,本文就主要介绍了MySQL之select优化方案,具有一定的参考价值,感兴趣的可以了解一下
    2021-08-08

最新评论