微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从 MariaDB 中检索任何日期格式为 YYYY-MM-DD 的数据?

如何解决如何从 MariaDB 中检索任何日期格式为 YYYY-MM-DD 的数据?

我正在使用以下方法从 MariaDB 检索数据:

SELECT * FROM table_name

此数据中的三列包含日期(并且格式为 YYYY-MM-DD 格式的日期)。当我在客户端收到它们时,它们显示为“2021-07-11T14:00:00.000Z”,但我想要“2021-07-11”。我尝试了很多东西,包括

SELECT * FROM table_name DATE_FORMAT(date_column_one,'dd/mm/yyyy')

哪个不起作用,以及

SELECT *,DATE_FORMAT(date_column_one,'dd/mm/yyyy') FROM table_name  

但这只是添加了另一列数据 - 我仍然以错误的格式获取其他日期。

网上有很多关于这些东西的信息,但我找不到任何地方将日期格式与基本的选择语句结合起来。

解决方法

您对 DATE_FORMAT 的调用未使用您在此处似乎想要的格式掩码,即 yyyy-mm-dd。尝试使用正确的掩码,也不要通过 SELECT * 选择日期列:

SELECT col1,col2,col3,...  -- excluding date_column_one etc. 
       DATE_FORMAT(date_column_one,'yyyy-mm-dd') AS date_column_one
FROM table_name;
,

如果你只想返回一个 date,那么你可以使用 date 函数:

SELECT . . .,-- the other columns
       DATE(date_column_one)
FROM table_name;

但是,这会返回一个类型为 date 的列,您可以在应用程序中显示它。某些应用程序可能会“帮助”您决定要查看时间和时区。

您可以通过使用 DATE_FORMAT():

将值转换为 字符串 来控制这一点
SELECT . . .,-- the other columns
       DATE_FORMAT(date_column_one,'%d/%m/%Y')
FROM table_name;

现在这个值是一个字符串,它的格式不会改变。格式 '%Y-%m-%d' 是标准的 YYYY-MM-DD 格式,我更喜欢这种格式。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。