SQL 日期格式 筆記
Code Newbie Note for only can use.
資料類型datetime常用來取得日期時間
“預設值或繫結” = getdate()
在Design中的 "預設值或繫結" 填入為 getdate(),
則當下的日期時間會被記錄在資料庫中,使用者不需自己填寫日期時間。
“預設值或繫結” = Y
開放使用者自己填寫日期時間。
“預設值或繫結” = N
不開放欄位。
直接執行 SELECT GETDATE()
取得:2021–08–05 15:17:57.623
記錄: 年 - 月 - 日 時:分:秒.毫秒
會給你很~完整的資料 (但有時不需要這麼多==)
轉換格式 — 西元 年.月.日
SELECT CONVERT(varchar(10), GETDATE(),102) AS YearMonthDate
2021.08.06
CONVERT ( 資料型別 [(長度)] , expression內容 [, 樣式代碼])
[]:為非必要之部分
轉換格式 — 民國 年/月/日
SELECT N'民國'+ CONVERT(VARCHAR(10),(GETDATE()-CAST('1911' AS DATETIME)),11) AS 民國日期
民國110/08/06
轉換格式 — 西元 年-月-日 時間 hh:mm:ss
CONVERT(char(19), getdate(), 120)
2021–08–06 11:05:20
樣式代碼
- 101: mm/dd/yyyy — 12/27/2009
- 2 : yy.mm.dd — 09.12.27
- 103: dd/mm/yyyy — 27/12/2009
- 104: dd.mm.yy — 27.12.2009
- 11 : yy/mm/dd — 09/12/27
- 111: yyyy/mm/dd — 2012/12/09
Select between 的雷
SELECT * FROM Orders WHERE OrderDate BETWEEN ‘2020–01–01’ AND ‘2020–12–31’
事實上2020–12–31只會取到 00:00:00,即接下來的24小時資料不會抓到
所以應該是 ‘2020–01–01’ AND ‘2021–01–01’ 才是一整年度。
拆分取各自年月日時分秒
用 DATEPART,如:SELECT DATEPART(yyyy,GETDATE()) as ‘年’
2021