回答
嘗試echo date('d/m/Y', strtotime($date));
這將帶您現有的日期,將其轉換爲UNIX時間和您所需的格式轉換回一個日期。
不,您不能更改DATE,DATETIME或TIMESTAMP列的默認MySQL格式。
但是,您可以在SQL語句中使用MySQL函數以不同格式輸出DATE表達式作爲字符串。
DATE_FORMAT(datecol , '%m/%d/%Y') AS datecol
(這將在SELECT列表做工精細,但避免任何謂詞使用這個(即WHERE子句)。在那裏,你將要引用的裸柱,和轉換您的首選格式「的字符串MM/DD/YYYY」使用STR_TO_DATE功能,如
datecol >= STR_TO_DATE('07/16/2012','%m/%d/%Y')
雖這麼說,我覺得你真的會使用MySQL的默認日期格式與數據庫的交互得到更好的服務,並處理格式你的代碼有變化。
其他DBMS具有可以更改的默認格式,即使在會話基礎上也是如此。例如,在Oracle中,您可以簡單地更改NLS_DATE_FORMAT
會話變量,Oracle將使用您的自定義格式輸入和輸出。 MySQL不。
是有一對夫婦的server variables(date_format
和datetime_format
),您可以動心考慮適合於這個目的:
mysql> SHOW VARIABLES LIKE 'date%_format';
+-----------------+-------------------+
| Variable_name | Value |
+-----------------+-------------------+
| date_format | %Y-%m-%d |
| datetime_format | %Y-%m-%d %H:%i:%s |
+-----------------+-------------------+
首先,它們是服務器端,他們是不是動態(它們不能在運行時設置)。但更糟的是,他們從來沒有實際使用過。這些變量從未影響日期格式。目前它們已被棄用並排隊刪除。
總結:不,你不能。 日期格式已修復。
正如其他人已經解釋說,這是不可能的,但這是另一種解決方案,它需要一點調整,但它的工作方式像日期列。
我開始思考,我怎樣才能使格式化成爲可能。我有一個想法。如何爲它啓動觸發器?我的意思是,添加類型爲char
的列,然後使用MySQL觸發器更新該列。這工作!我做了相關的觸發一些研究,最後拿出這些查詢:
CREATE TRIGGER timestampper BEFORE INSERT ON table
FOR EACH
ROW SET NEW.timestamp = DATE_FORMAT(NOW(), '%d/%m/%Y');
CREATE TRIGGER timestampper2 BEFORE UPDATE ON table
FOR EACH
ROW SET NEW.timestamp = DATE_FORMAT(NOW(), '%d/%m/%Y');
不能使用TIMESTAMP
或DATE
作爲列類型,因爲這些都有自己的格式,和他們自動更新。
所以,這是您的替代時間戳或日期替代!希望這會有所幫助,至少我很高興我能做到這一點。
- 1. 更改MYSQL日期格式
- 2. Mysql:更改日期格式
- 3. mysql更改日期格式
- 4. MySQL日期格式更改
- 5. 更改日期格式,MySQL讀取
- 6. 在php中更改日期格式mysql
- 7. 如何更改MySQL日期格式?
- 8. 更改日期格式從MySQL
- 9. PHP - 更改日期格式
- 10. 更改日期格式
- 11. 更改日期格式(Javascript)
- 12. 更改日期格式Trello.NET
- 13. 更改日期格式
- 14. PHP - 日期更改格式
- 15. 更改新日期格式
- 16. 更改日期格式
- 17. 更改日期格式
- 18. 更改日期格式
- 19. 更改日期格式
- 20. 要更改日期格式
- 21. 更改日期格式
- 22. 更改日期格式
- 23. 更改日期格式 「」
- 24. 更改日期格式YYYYMMDD
- 25. 更改日期格式C
- 26. 更改日期格式
- 27. 更改日期格式
- 28. 更改日期格式
- 29. Dygraphs更改日期格式
- 30. 更改日期格式
問題是詢問MySQL的日期格式。 – Kermit 2012-07-18 15:55:23