[SQL ] 儲存日期格式時的欄位型態

看板Database作者 (4545454554)時間7年前 (2017/08/03 17:57), 7年前編輯推噓4(408)
留言12則, 8人參與, 最新討論串1/1
資料庫名稱:SQL SERVER 資料庫版本:2016 各位好 某個欄位如果要儲存日期 請問大家會傾向用datetime 還是int ? 我本來是用datetime 但我看某些範例會用int 存成八碼數字 EX:20170504 使用上 如果用來比較 好像也OK 但int沒有dateadd,datediff之類的函數可以用 想請問 大家在儲存日期時 型態都會怎麼選擇呢? 謝謝 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1501754244.A.38D.html

08/03 18:30, , 1F
格式可用yyyymmdd,datetime比較好處理
08/03 18:30, 1F

08/03 19:51, , 2F
int最大值好像是65535,你這資料應該存不進去,要就用da
08/03 19:51, 2F

08/03 19:51, , 3F
tetime,我是用char來存,比較時再轉date格式
08/03 19:51, 3F

08/03 22:28, , 4F
當然推薦datetime呀.... 也關係到ui設計
08/03 22:28, 4F

08/04 07:28, , 5F
當然是 datetime 除非你要轉換成 unix time 格式
08/04 07:28, 5F

08/04 07:28, , 6F
否則其他格式 非常難處理,你後面處理會吐血
08/04 07:28, 6F

08/04 14:46, , 7F
datetime變換時區也比較容易..
08/04 14:46, 7F

08/04 16:18, , 8F
既然是日期當然就用datetime啊,用文字以後就知道苦
08/04 16:18, 8F

08/04 16:18, , 9F
08/04 16:18, 9F
感謝大家

08/04 21:49, , 10F
datetime,不然你要用算個民國年或是月份沒補零或是要改格
08/04 21:49, 10F

08/04 21:49, , 11F
式都要額外自己轉換
08/04 21:49, 11F

08/14 23:29, , 12F
單純日期的話用 date 如何?
08/14 23:29, 12F
謝謝 我最後就是用date 但這問題就是在datetime(date)和int之間取捨 而非datetime和date ※ 編輯: kisha024 (60.251.182.4), 09/23/2017 16:48:46
文章代碼(AID): #1PWlE4ED (Database)