是否可以更改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