当前位置: 首页 > news >正文

mysql 日期时间变成中文显示

        在mysql事件中,里面有个内容,需要把日期时间“2024-02-28 12:15:16”,变成 “24年2月28日12时15分16秒”,

        这时候,需要使用到格式化的内容。

将日期和时间格式化的函数

        DATE_FORMAT(date,format)根据format指定的格式显示date值。主要format格式如表6.3所示。

                                       表6.3 DATE_FORMAT时间日期格式

说明符

说明

%c

月份,数字形式(0..12)

%d

该月日期,数字形式(00..31)

%e

该月日期,数字形式(0..31)

%H

以2位数表示24小时(00..23)

%h, %I

以2位数表示12小时(01..12)

%i

'分钟,数字形(00..59)

%j

一年中的天数(001.366)

%k

以24(20..23)小时表示时间

%l

以12(1..12)小时表示时间

%n

月份,数字形式(00..12)

%r

时间,12小时制(小时hh:分钟mm:秒数ss后加AM或PM)

%S, %s

以2位数形式表示秒(00..59)

%U

周(0.53),其中周日为每周的第一天

%u

周(00..53), 其中周一为每周的第一天

%V

周(01..53), 其中周日为每周的第一天;和%X同时使用

%v

周(01..53),其中周一为每周的第一天;和%x同时使用

%W

工作日名称(周日..周六)

%w

一周中的每日(0=周日..6=周六)

%X

该周的年份,其中周日为每周的第-天;数字形式,4位数;和%V同时使用

%x

该周的年份,其中周一-为每周的第一天;数字形式,4位数;和%v同时使用

%Y

4位数形式表示年份

%y

2位数形式表示年份

%%

'%'文字字符

 当前时间格式化:

SELECT  CONCAT(DATE_FORMAT(NOW(), '%y'),'年', 
DATE_FORMAT(NOW(), '%c'),'月', DATE_FORMAT(NOW(), '%e'),'日',
DATE_FORMAT(NOW(), '%k'),'时', DATE_FORMAT(NOW(), '%i'),'分',
 DATE_FORMAT(NOW(), '%s'),'秒' ) AS time_cn;

指定日期格式化:

SELECT CONCAT(DATE_FORMAT(STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s'), '%y'),'年',
 DATE_FORMAT(STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s'), '%c'),'月', 
 DATE_FORMAT(STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s'), '%e'),'日',
DATE_FORMAT(STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s'), '%k'),'时', 
DATE_FORMAT(STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s'), '%i'),'分', 
DATE_FORMAT(STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s'), '%s'),'秒' ) AS time_cn;

这样内容显得很多

用变量的方式:

SET @date := STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s');
SELECT CONCAT(DATE_FORMAT(@date, '%y'),'年', 
DATE_FORMAT(@date, '%c'),'月', DATE_FORMAT(@date, '%e'),'日',
DATE_FORMAT(@date, '%k'),'时', DATE_FORMAT(@date, '%i'),'分', 
DATE_FORMAT(@date, '%s'),'秒' ) AS time_cn;

这样就简洁一些

范围日期时间格式化:

SET @startDate := STR_TO_DATE('2024-02-28 12:15:16', '%Y-%m-%d %H:%i:%s'),
 @endDate := STR_TO_DATE('2024-03-5 11:25:06', '%Y-%m-%d %H:%i:%s');
SELECT CONCAT(DATE_FORMAT(@startDate, '%y'),'年', 
DATE_FORMAT(@startDate, '%c'),'月', DATE_FORMAT(@startDate, '%e'),'日',
DATE_FORMAT(@startDate, '%k'),'时', DATE_FORMAT(@startDate, '%i'),'分', 
DATE_FORMAT(@startDate, '%s'),'秒','到',
DATE_FORMAT(@endDate, '%y'),'年', DATE_FORMAT(@endDate, '%c'),'月',
 DATE_FORMAT(@endDate, '%e'),'日',
DATE_FORMAT(@endDate, '%k'),'时', DATE_FORMAT(@endDate, '%i'),'分', 
DATE_FORMAT(@endDate, '%s'),'秒' ) AS time_cn;

总结:

        日期时间要转换为中文的格式,需要使用到格式化的函数,具体格式化要求,根据实际的来,参考列表上的内容进行处理。

相关文章:

  • 如何解决 Hive 在创建 MySQL 表时出现乱码???的问题
  • 堤坝决口快速沉箱,守护生命的抗洪防线|鼎跃安全
  • 《认知觉醒》下篇·第四章第二节“学习专注:深度沉浸是进化双刃剑的安全剑柄” 总结
  • Layui日期选择器的使用逻辑
  • 23种设计模式-结构型模式-装饰
  • 如何在 SwiftUI 视图中使用分页(Paging)机制显示 SwiftData 数据(三)
  • 藏族问候语语料库下载-选取按方言区分类的藏语问候语音频
  • 卷积层里的多输入多输出通道
  • 论文笔记:ASTTN模型
  • LINUX 1
  • [Linux实战] Linux设备树原理与应用详解
  • 并发多线程八股
  • ML 聚类算法 dbscan|| OPTICS
  • 使用 glog 库的 CHECK 宏进行条件断言和错误检测
  • K-均值聚类
  • DeepBI如何探索流量种子,快速帮助产品扩展流量
  • 卷积神经网络(CNN)原理与实战:从LeNet到ResNet
  • C 语 言 --- 整 形 提 升
  • 第三章 devextreme-react/scheduler 定制属性学习
  • 第十届MathorCup高校数学建模挑战赛-A题:无车承运人平台线路定价问题
  • 女孩患异食癖爱吃头发,一年后腹痛入院体内惊现“头发巨石”
  • 体坛联播|博洛尼亚时隔51年再夺意杯,皇马逆转马洛卡
  • 腾讯一季度营收增长13%,马化腾:战略性的AI投入将带来长期回报
  • 上海市重大工程一季度开局良好,崇明线等按既定计划加快建设
  • 熊出没!我驻日本札幌总领馆提示中国公民注意人身安全
  • 泽连斯基批准美乌矿产协议