數據庫存儲時間數據用timestamp 好還是 varchar好


表示日期數據基本是date型,只有年月的用varchar2或者char,好處見下:
1、數據規范。date對合法日期型會校驗,包括閏年2月這種。避免字符型變量產生的某月32號,日期長度不對,日期格式不統一等問題。曾經有過痛苦經歷,面對字符型的2013111這種數據不知道是11月1日還是1月11日,只想說日…
2、檢索效率。如果你經常在where后面帶這個日期,或者要給這個字段建索引。你可以試試date和char的差別,更別說分區索引了。
3、計算方便。當你計算兩個日期差幾天,你是願意對着char寫個function判斷大月小月閏月呢,還是直接拿date變量date1-date2呢?當你要批量把日期往后延50天的話,你是願意寫一大段存儲過程呢,還是直接update table set date1=date1+50呢?

如果date型變量就是一個char(14)的話,那根本不值得被單獨創建出來,既然存在,那就一定有特殊意義和使用價值。


作者:夢遺的新娘
鏈接:https://www.zhihu.com/question/25541686/answer/31068450
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM