首页 >数据库 >mysql教程 >如何将 MySQL 日期字符串 (dd/mm/yyyy) 转换为 yyyy-mm-dd 格式?

如何将 MySQL 日期字符串 (dd/mm/yyyy) 转换为 yyyy-mm-dd 格式?

Patricia Arquette
Patricia Arquette原创
2024-12-24 04:04:14455浏览

How to Convert MySQL Date Strings (dd/mm/yyyy) to yyyy-mm-dd Format?

在选择查询中将 MySQL 日期字符串转换为 yyyy-mm-dd

要转换 MySQL 中以 dd/mm/yyyy 格式存储为字符串的日期,您可以利用 STR_TO_DATE() 函数解析字符串并将其转换为日期时间数据类型。此转换对于随后应用 DATE_FORMAT() 等日期操作函数至关重要。

解决方案

要将日期字符串转换为所需的 yyyy-mm-dd 格式,您可以在中使用以下公式一个 SELECT 查询:

DATE_FORMAT(STR_TO_DATE(t.datestring, '%d/%m/%Y'), '%Y-%m-%d')

分解公式:

  • STR_TO_DATE(t.datestring, '%d/%m/%Y'):解析dd/mm/yyyy格式的日期字符串,并将其转换为日期时间datatype.
  • DATE_FORMAT():将转换后的日期时间值格式化为所需的 yyyy-mm-dd格式。

用法示例

SELECT DATE_FORMAT(STR_TO_DATE('25/03/2023', '%d/%m/%Y'), '%Y-%m-%d') AS formatted_date;

输出:

2023-03-25

替代方法:创建视图

如果无法修改原始列的数据类型,请考虑创建一个转换日期字符串的视图使用 STR_TO_DATE() 转换为日期时间值。这种方法允许您在不更改基础表的情况下对转换后的值执行查询。

CREATE VIEW converted_dates AS
SELECT t.id, t.datestring, STR_TO_DATE(t.datestring, '%d/%m/%Y') AS converted_date
FROM original_table t;

然后,您可以查询 returned_dates 视图以直接检索转换后的日期值:

SELECT converted_date
FROM converted_dates
WHERE id = 1;

以上是如何将 MySQL 日期字符串 (dd/mm/yyyy) 转换为 yyyy-mm-dd 格式?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn