MySQL將返回“0000-00-00”日期中的年份值,是按Year(2)還是Year(4)格式?


假設我們把一個日期值“0000-00-00”儲存在MySQL表中,那麼從這種型別的日期中提取年份值時,MySQL將返回0。它既不是Year(2)也不是Year(4)格式。為了理解這一點,我們正在使用“detail_bday”表中的以下資料 −

mysql> Select * from detail_bday;
+----+---------+------------+
| Sr | Name    | Birth_Date |
+----+---------+------------+
| 1 | Saurabh  | 1990-05-12 |
| 2 | Raman    | 1993-06-11 |
| 3 | Gaurav   | 1984-01-17 |
| 4 | Rahul    | 1993-06-11 |
| 5 | Sonia    | 1993-11-31 |
| 6 | Ram      | 0000-00-00 |
+----+---------+------------+
6 rows in set (0.00 sec)

現在,以下查詢將嘗試從日期“0000-00-00”中提取年份值 −

mysql> Select Year(Birth_date) from detail_bday Where Name = 'Ram';
+------------------+
| Year(Birth_date) |
+------------------+
|                0 |
+------------------+
1 row in set (0.00 sec)

以上結果集顯示,MySQL返回0,而不是以Year(2)或Year(4)格式給出的值。

更新於:2020年1月29日

114次瀏覽

開啟 職業生涯

完成課程獲取認證

開始學習
廣告
© . All rights reserved.