修改MySQL内部日期格式

时间:2013-08-06 17:17:48

标签: mysql date format

mySQL中的日期数据类型格式为yyyy-mm-dd。我希望它将日期存储为dd-mm-yyyy。

所有答案都显示了如何以特定格式显示日期。但是我想修改MySQL存储日期的格式。

无论如何我能实现这个目标吗?

4 个答案:

答案 0 :(得分:1)

您无法更改MYSQL日期存储格式。您可以使用DATE_FORMAT()以显示格式显示它。

根据您的评论进行编辑: -

 INSERT INTO useless_table (id, date) VALUES(
        1, STR_TO_DATE('06/08/2013', '%m/%d/%Y'));

答案 1 :(得分:1)

您无法更改数据库存储日期的方式。

这些存储为YYYY-MM-DD,以便使用lexicographic order对日期进行排序。任何其他格式都会丢失该属性,因此DB服务器将无法有效地对日期进行排序。

正如您已经被告知的那样,您可能会更改SELECT查询中的日期格式。如果确实希望使用其他格式存储日期,则可能需要使用CHAR(10)列。

如果你这样做,你将能够在该列中搜索相等性。但不是按日期排序。既不能在给定范围内找到日期。

答案 2 :(得分:0)

日期和时间以SQL引擎本机的内部格式存储在SQL数据库中,前4个字节存储自SQL Server时代(1900年1月1日)以来的天数。第二个4个字节存储午夜后的毫秒数。

您不应该关心日期的存储方式。您可以以任何您喜欢(或需要)的格式检索日期(或日期/时间)。

答案 3 :(得分:0)

假设列的名称是时间,您可以使用以下sql

SELECT YEAR(time) as year, MONTH(time) as month, DAY(time) as day FROM table

然后,按你的意愿去做。