語法
CONVERT(nvarchar(長度), 日期欄位, 格式代碼)
日期格式 (DATE)
| 代碼 | 範例輸出 (2006-12-30) | 格式描述 |
| 1 | 12/30/06 | 美式 MM/DD/YY |
| 2 | 06.12.30 | YY.MM.DD |
| 3 | 30/12/06 | DD/MM/YY |
| 4 | 30.12.06 | DD.MM.YY |
| 5 | 30-12-06 | DD-MM-YY |
| 6 | 30 Dec 06 | DD Mon YY |
| 7 | Dec 30, 06 | Mon DD, YY |
| 10 | 12-30-06 | MM-DD-YY |
| 11 | 06/12/30 | YY/MM/DD |
| 101 | 12/30/2006 | 美式 MM/DD/YYYY |
| 102 | 2006.12.30 | YYYY.MM.DD |
| 103 | 30/12/2006 | DD/MM/YYYY |
| 104 | 30.12.2006 | DD.MM.YYYY |
| 105 | 30-12-2006 | DD-MM-YYYY |
| 106 | 30 Dec 2006 | DD Mon YYYY |
| 107 | Dec 30, 2006 | Mon DD, YYYY |
| 110 | 12-30-2006 | MM-DD-YYYY |
| 111 | 2006/12/30 | YYYY/MM/DD (ISO 8601 短格式) |
時間格式 (TIME)
| 代碼 | 範例輸出 | 格式描述 |
| 8 / 108 | 00:38:54 | HH:MI:SS (24小時制) |
| 9 / 109 | Dec 30 2006 12:38:54:840AM | Mon DD YYYY HH:MI:SS:mmmAM/PM |
| 14 / 114 | 00:38:54:840 | HH:MI:SS:mmm (24小時制含毫秒) |
常用組合範例
-- 完整日期時間 (含毫秒)
SELECT CONVERT(VARCHAR, GETDATE(), 121); -- 2006-12-30 00:38:54.840
-- 僅日期 (ISO 標準)
SELECT CONVERT(VARCHAR, GETDATE(), 111); -- 2006/12/30
-- 僅時間 (精確到秒)
SELECT CONVERT(VARCHAR, GETDATE(), 108); -- 00:38:54
提醒
- 格式代碼 0/100 為預設值 (Mon DD YYYY HH:MIAM/PM)
- SQL Server 2008+ 建議使用
FORMAT() 函數支援自訂格式字串