【问题标题】:MySQL date formatMySQL日期格式
【发布时间】:2011-07-19 01:43:05
【问题描述】:

当我在 mysql 中创建一个表并创建一个日期类型的字段时,它存储的日期类似于 0000-00-00。是否可以将格式更改为“d-m-Y”?

【问题讨论】:

    标签: mysql date


    【解决方案1】:

    我看到了两者的用途,但我发现这个布局作为参考工具更有用:

    SELECT DATE_FORMAT('2004-01-20' ,'%Y-%m-01');
    

    【讨论】:

      【解决方案2】:

      您可以使用 SQL 来做到这一点

      SELECT DATE_FORMAT(date_field, "%d-%m-%Y") FROM ...
      

      或者,如果您使用的是 PHP,您也可以获得相同的结果:

      echo date('d-m-Y', $originalDate);  //You will get something like 09-08-2013 (Aug 8th, 2013)
      echo date('j-n-y', $originalDate);  //You will get something like 9-8-13 (Aug 8th, 2013)
      

      【讨论】:

        【解决方案3】:

        转到MySQL Reference - 10.5. Data Type Storage Requirements

        搜索:日期和时间类型的存储要求

        日期在内部存储为A three-byte integer packed as DD + MM×32 + YYYY×16×32

        但是,如果您选择一个日期列显示,它必须以某种方式显示,所以它显示为 0000-00-00。它以特定格式存储为 char(10)。

        如果为了显示,您需要查看特定格式,您可以使用Date_Format() 将其转换为特定格式的 VARCHAR。但是,请记住,如果您在编程工具中使用查询,这不是您想要做的。您想要原始 日期值,出于显示目的,无论您使用什么编程环境,都会有类似的格式化功能。

        从 DATE_FORMAT 中的参考资料中可以看出,您将需要使用 '%d-%m-%Y',例如

        SELECT col1, col2, DATE_FORMAT(datecolumn, '%d-%m-%Y') AS datecolumn, more1...
        FROM sometable
        ....
        

        【讨论】:

          【解决方案4】:

          不,这是不可能的。但是您可以使用 DATE_FORMAT 来选择这种方式。

          SELECT Date_format(mydatefield, '%d-%m-%Y') 
          FROM   table 
          

          【讨论】:

          • 哦,太好了。我得到了它。谢谢大家
          【解决方案5】:

          不,将其保留为日期字段是不可能的。我建议您保持这种格式 - 这样您就可以使用所有 mysql 日期函数 - 并且仅在向用户显示时更改它。

          您可以在应用程序端进行,也可以直接使用查询:

          SELECT DATE_FORMAT(date_field, "%d-%m-%Y") FROM ...
          

          【讨论】:

          • 我有另一种方法,我可以通过 strtotime() 存储 int 类型的时间戳,然后它可以与 date() 函数一起使用。我不确定这是不是好方法。
          • 是的,但是 int 时间戳完全不可读。 mysql 默认格式让您无需处理即可了解日期。如果您使用 INT,您也不能使用日期函数(提取日、月、间隔等)
          猜你喜欢
          • 2017-12-17
          • 2011-10-20
          • 2013-12-24
          • 2023-03-29
          • 1970-01-01
          • 1970-01-01
          • 2023-03-24
          • 1970-01-01
          相关资源
          最近更新 更多