首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL 日期時間操作實戰:GETDATE、CONVERT 與 DATEPART 完整指南

     編輯:關於SqlServer

日期時間函數在網站開發中的關鍵角色

日期時間函數對於追蹤資料異動、記錄使用者活動、建立稽核軌跡至關重要。SQL Server 提供毫秒級精度,滿足高精度時間記錄需求。

取得目前日期時間:GETDATE()

GETDATE() 回傳目前系統日期時間,格式範例:Nov 30 1997 3:29AM。常作為 DATETIME 欄位的預設值,自動記錄資料建立時間:

CREATE TABLE site_log (
    username VARCHAR(40),
    useractivity VARCHAR(100),
    entrydate DATETIME DEFAULT GETDATE()
)

格式轉換:CONVERT() 函數詳解

SQL Server 內部時間精度達 3.33 毫秒,CONVERT() 可依指定樣式代碼輸出多種格式。語法:CONVERT(資料類型, 日期時間, 樣式代碼)

-- 含毫秒的完整格式(樣式 9)
SELECT CONVERT(VARCHAR(30), GETDATE(), 9)
-- 結果:Nov 30 1997 3:29:55:170AM

常用日期時間樣式代碼對照表

代碼標準/風格輸出範例備註
0預設mon dd yyyy hh:miAM
1USAmm/dd/yy
2ANSIyy.mm.dd
3British/Frenchdd/mm/yy
4Germandd.mm.yy
5Italiandd-mm-yy
6-dd mon yy
7-mon dd, yy
8-hh:mi:ss僅時間
9預設+毫秒mon dd yyyy hh:mi:ss:mmmAM含毫秒
10USAmm-dd-yy
11Japanyy/mm/dd
12ISOyymmdd
13Europedd mon yyyy hh:mi:ss:mmm(24h)24小時制+毫秒
14-hh:mi:ss:mmm(24h)24小時制時間

技巧: 代碼 0、9、13 預設回傳四位數年份;其他代碼加 100 可顯示世紀(如 111 為 yyyy/mm/dd)。

擷取日期時間元件:DATEPART()

僅需日期時間特定部分時使用,語法:DATEPART(日期部分, 日期時間值)

SELECT site_name AS 'Site Name',
       DATEPART(mm, site_entrydate) AS 'Month Posted'
FROM site_directory

常用日期部分參數:yy(年)、mm(月)、dd(日)、hh(時)、mi(分)、ss(秒)、ms(毫秒)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved