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

作者:fengyehongWorld 时间:2024-01-27 15:41:56 

一.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

来源:https://blog.csdn.net/feyehong/article/details/120177756

标签:sql,日期,字符串
0
投稿

猜你喜欢

  • 浅析Django 接收所有文件,前端展示文件(包括视频,文件,图片)ajax请求

    2023-03-30 14:35:25
  • Web脚本开发语言比较

    2007-08-22 17:32:00
  • vue element-ui el-table组件自定义合计(summary-method)的坑

    2024-05-05 09:24:19
  • 解决Django的request.POST获取不到内容的问题

    2022-12-26 18:55:20
  • Can't connect to MySQL server的解决办法

    2024-01-19 07:30:31
  • JavaScript对Json的增删改属性详解

    2024-04-18 09:36:27
  • Python爬虫抓取技术的一些经验

    2021-06-09 12:02:23
  • Django对接elasticsearch实现全文检索的示例代码

    2023-07-02 01:31:29
  • pytorch 彩色图像转灰度图像实例

    2023-08-02 17:28:37
  • php下常用表单验证的正则表达式

    2024-05-03 15:35:08
  • “mailto”的六则应用技巧

    2008-08-29 13:16:00
  • 使用python和Django完成博客数据库的迁移方法

    2022-05-16 03:58:25
  • MySQL 数据类型选择原则

    2024-01-21 03:02:42
  • Vue+Antv F2实现层叠柱状图

    2023-07-02 16:54:55
  • 浅谈MySQL与redis缓存的同步方案

    2024-01-13 23:44:58
  • Oracle创建主键自增表(sql语句实现)及触发器应用

    2024-01-17 07:12:37
  • 如何取得所有的Session变量

    2008-06-08 13:59:00
  • python如何正确的操作字符串

    2023-12-28 02:46:30
  • Python机器学习入门(五)之Python算法审查

    2021-10-15 09:27:48
  • asp如何对Access数据库进行压缩?

    2009-11-19 21:20:00
  • asp之家 网络编程 m.aspxhome.com