SQL Date 日期時間

一般資料庫都有提供表示日期的資料型態 (Date Data Types)。

MySQL 中,有這些型態來表示日期:

  • DATE 型態 - 格式是 YYYY-MM-DD
  • DATETIME 型態 - 格式是 YYYY-MM-DD HH:MI:SS
  • TIMESTAMP 型態 - 格式是 YYYY-MM-DD HH:MI:SS
  • YEAR 型態 - 格式是 YYYY

SQL Server 中,有這些型態來表示日期:

  • DATE 型態 - 格式是 YYYY-MM-DD
  • DATETIME 型態 - 格式是 YYYY-MM-DD HH:MI:SS
  • SMALLDATETIME 型態 - 格式是 YYYY-MM-DD HH:MI:SS

日期查詢 (select date)

例如下面這張 Orders 資料表:

OrderIdProductNameOrderDate
1Geitost2018-12-11
2Camembert Pierrot2018-11-09
3Mozzarella di Giovanni2018-11-11
4Mascarpone Fabioli2018-10-29

從表中取得訂單日期為 2018-11-09 的訂單:

SELECT * FROM Orders WHERE OrderDate='2018-11-09'

返回的結果:

OrderIdProductNameOrderDate
2Camembert Pierrot2018-11-09

日期比較 - 查詢某個日期區間內的資料 (select data from date range)

假如你想查詢上面 Orders 資料表中,所有 2018/11 月份的訂單。

你可以用比較運算子 >, =, <, >=, <=

SELECT * FROM Orders WHERE OrderDate>='2018-11-01' AND OrderDate<'2018-12-01'

或用 BETWEEN 運算子

SELECT * FROM Orders WHERE OrderDate BETWEEN '2018-11-01' AND '2018-11-30'

返回的結果:

OrderIdProductNameOrderDate
2Camembert Pierrot2018-11-09
3Mozzarella di Giovanni2018-11-11

日期操作相關的函數 (date functions)

MySQL

SQL Server