是否可以更改date()的配置;那已经插入数据库了?如何更改时间配置?
例如: 现在的日期显示在下面的方法:2013年12月12日下午12时28
有没有只显示我从中选择部分的方法吗?像“12 DEC”。
试图在PHP中完成此操作。
谢谢!
是否可以更改date()的配置;那已经插入数据库了?如何更改时间配置?
例如: 现在的日期显示在下面的方法:2013年12月12日下午12时28
有没有只显示我从中选择部分的方法吗?像“12 DEC”。
试图在PHP中完成此操作。
谢谢!
获取日期与您的格式,你会尝试:
<?php
echo date('d M');
?>
但是,你需要更新你的表中每一行改变自己的价值。
使用date()
函数。如果您尝试格式化数据库条目的值,请使用strtoupper(date('j M',strtotime($row['column'])))
(它将输出您要查找的格式并将所有内容像您提供的示例一样输出)进行获取并显示它
不要存储日期/时间值(尤其是详细格式化)作为数据库中的字符串,因为您无法正常维护和查询数据。如果您以秒为单位存储Unix纪元时间,则使用适当的日期data types(DATETIME
,TIMESTAMP
或甚至INT
)。
您可以在以下方式
UPDATE table_name
SET column_name = STR_TO_DATE(column_name, '%M %D, %Y, %h:%i %p');
ALTER TABLE table_name CHANGE column_name column_name DATETIME;
这里从VARCHAR
数据类型更改为DATETIME
是SQLFiddle演示
现在可以正确地过滤和date
列,例如,为了您的数据:
SELECT *
FROM table_name
WHERE column_name >= '2013-12-17'
AND column_name < '2013-12-18'
ORDER BY column_name DESC;
现在你可以
SELECT DATE_FORMAT(column_name, '%d %b') formatted_date
FROM table_name;
输出示例:
| FORMATTED_DATE | |----------------| | 17 Dec | | 18 Dec |
这里是SQLFiddle演示
在此期间,如果你需要的,因为你需要与DATE_FORMAT()
的功能,例如方便地展示您的日期时间值立即解决您的问题
SELECT DATE_FORMAT(STR_TO_DATE(column_name, '%M %D, %Y, %h:%i %p'), '%d %b') formatted_date
FROM table_name;
这里是SQLFiddle演示
你尝试'日期()'?你在你的问题中提到过它。 – AbraCadaver
http://dev.mysql.com/doc/refman/5.0/en/locale-support.html或http://dev.mysql.com/doc/refman/5.5/zh/date-and-time-functions 。html可能会有所帮助,具体取决于您希望它是全局更改还是特定于查询 – xQbert
您说过显示日期的方式,但是您没有提到如何实际存储它们。什么是您的表中此列使用的确切数据类型? – peterm