钟二网络头像

钟二网络

探索SQL查询技巧、Linux系统运维以及Web开发前沿技术,提供一站式的学习体验

  • 文章92531
  • 阅读1037574
首页 SQL 正文内容

日期转成中文日期sql

钟逸 SQL 2025-08-01 01:26:34 2

在使用 SQL 语句处理日期数据时,有时我们需要将日期转换为中文格式,以便于阅读和理解。下面介绍两种常见的日期转成中文日期的 SQL :

使用 FORMAT() 函数

FORMAT() 函数可以对日期进行格式化,其中包括转换为中文日期。语法如下:

sql

FORMAT(date, 'YYYY年MM月DD日')

其中,date 为要转换的日期值,YYYY、MM、DD 分别代表年份、月份和日期。例如:

sql

SELECT FORMAT('2023-03-08', 'YYYY年MM月DD日') AS 中文日期;

结果:2023年03月08日

使用 CASE 语句

CASE 语句也可用于日期转成中文日期。语法如下:

sql

CASE

WHEN date BETWEEN '2000-01-01' AND '2099-12-31' THEN '公元' || SUBSTRING(date, 1, 4) || '年' || SUBSTRING(date, 6, 2) || '月' || SUBSTRING(date, 9, 2) || '日'

ELSE '日期错误'

END AS 中文日期

其中,date 为要转换的日期值。BETWEEN 语句用于判断日期是否在指定的范围之内。SUBSTRING() 函数用于提取日期中的年份、月份和日期信息。例如:

sql

SELECT CASE

WHEN '2023-03-08' BETWEEN '2000-01-01' AND '2099-12-31' THEN '公元' || SUBSTRING('2023-03-08', 1, 4) || '年' || SUBSTRING('2023-03-08', 6, 2) || '月' || SUBSTRING('2023-03-08', 9, 2) || '日'

ELSE '日期错误'

END AS 中文日期;

结果:公元2023年03月08日

注意事项

上述 仅适用于日期格式为 'YYYY-MM-DD' 的情况。如果日期格式不同,需要进行相应的调整。

此外,在使用 CASE 语句时,需要确保日期范围设置正确,否则可能会导致错误的结果。

文章目录
    搜索