我有一個DATETIME字符串,我只需要腳本中的DATE在我的數據庫中執行一些搜索。目前,我腦海中有兩種情況,但不知道哪種情況更快。檢索格式化日期時,哪種情況更快?
第一種方案:
在我的MySQL數據庫,我有兩列:datetime
(這是一個DATETIME型)和date
(這是一個日期型)。
然後,在我的PHP腳本,每次我保存的記錄,我將我知道的字符串插入到datetime
字段,然後將其轉換爲適合date
場(我在想是這樣的:$date = date("Y-m-d", strtotime($datetime))
)。
這樣,所有必需的作品都存儲在我的數據庫中,我可以在運行中檢索它們(datetime
和date
字段)。
第二場景:
MySQL數據庫應該只由datetime
列。
我的PHP腳本會將已知字符串插入到datetime
字段中,而不做任何其他修改。
當我取回我的數據,我會做這樣的事情:SELECT datetime, DATE(datetime) FROM ...
結論
哪個這些場景的速度更快,因此應該使用?日期格式應該保存還是取回?在格式化日期上,MYSQL比PHP快嗎?將所有內容都存儲在數據庫中並以原樣進行檢索,或僅存儲檢索時的最小值和格式是否更好?哪種情況是最佳做法?
謝謝!
所以,你建議我只有'datetime'在我的數據庫中的列,並使用檢索到的'datetime'在PHP中檢索'date'? – linkyndy
是的,'日期,strtotime'是你所需要的 – ajreal