我有一個MySQL表中的字段類型爲DATE
用於存儲一些日期,我有另一個表中我有一個字段的類型SMALLINT
只存儲一年。數據庫:如何存儲日期未知的日期還沒有發生的日期
現在我需要區分一個日期(或一年)還沒有發生的日期(或一年)。非常簡單,未知的值應該是NULL
。但是有沒有建議使用什麼值來存儲尚未與我提到的類型發生的日期?
我很確定1000年前沒有日期/年數會被使用,所以我可以使用例如0000-01-01
。有沒有更好的/推薦的解決方案?
編輯剛剛閱讀DATE
鍵入「支持的範圍是'1000-01-01'到'9999-12-31'。」所以我將不得不使用1000-01-01
而不是0000-01-01
。
爲什麼不僅僅使用未來日期?像2020-05-02或其他什麼?或者我誤解了這個問題? – Corbin
@Corbin是的,這是一種可能性;我可以使用例如'9999-12-31',但儘可能不像我的數據庫在幾千年內需要存儲任何數據,使用絕對不可能需要的日期似乎更清晰。我只是好奇,如果有任何推薦的方式來處理我的問題。 – lutogniew
聽起來你應該在兩種情況下都使用null。這些日期到底是什麼?你的要求沒有多大意義。 「看起來更清潔...... 0的機會......」你是什麼意思?你應該使用null或實際日期? – Corbin