SQL中CONVERT函數格式:CONVERT(data_type,expression[,style])
說明:
data_type:目標系統所提供的數據類型,如果轉換時沒有指定數據類型的長度,則 SQL Server 自動提供長度為 30。
expression:是任何有效的 Microsoft® SQL Server™ 表達式
style:【可選參數】日期格式樣式,此樣式一般在時間類型(datetime,smalldatetime)與字符串類型(nchar,nvarchar,char,varchar)相互轉換的時候才用到
style 參數提供的數值確定了 datetime 數據的顯示方式,年份可以顯示為兩位或四位數。默認情況下,SQL Server 將年份顯示為兩位數。若要顯示包括世紀的四位數年份 (yyyy)(即使年份數據是使用兩位數的年份格式存儲的),請給 style 值加 100 以獲得四位數的年份。
Style(年份為2位) | Style(年份為4位) | 輸入輸出格式 |
0 | 100 | mon dd yyyy hh:miAM(或PM)(兩者都是4位的年份) |
1 | 101 | mm/dd/yy |
2 | 102 | yy.mm.dd |
3 | 103 | dd/mm/yy |
4 | 104 | dd.mm.yy |
5 | 105 | dd-mm-yy |
6 | 106 | dd mon yy |
7 | 107 | mon dd,yy |
8 | 108 | hh:mm:ss |
9 | 109 | mon dd yyyy hh:mi:ss:mmmmAM(或PM)(12小時制) |
10 | 110 | mm-dd-yy |
11 | 111 | yy/mm/dd |
12 | 112 | yymmdd |
13 | 113 | dd mon yyyy hh:mi:ss:mmm(24小時制) |
14 | 114 | hh:mi:ss:mmm(24小時制) |
20 | 120 | yyyy-mm-dd hh:mi:ss(24小時制) |
21 | 121 | yyyy-mm-dd hh:mi:ss:mmm(24小時制) |
Select CONVERT(varchar(100), GETDATE(), 0);--01 8 2018 5:50PM Select CONVERT(varchar(100), GETDATE(), 100);--01 8 2018 5:50PM Select CONVERT(varchar(100), GETDATE(), 1);--01/08/18 Select CONVERT(varchar(100), GETDATE(), 101);--01/08/2018 Select CONVERT(varchar(100), GETDATE(), 2);--18.01.08 Select CONVERT(varchar(100), GETDATE(), 102);--2018.01.08 Select CONVERT(varchar(100), GETDATE(), 3);--08/01/18 Select CONVERT(varchar(100), GETDATE(), 103);--08/01/2018 Select CONVERT(varchar(100), GETDATE(), 4);--08.01.18 Select CONVERT(varchar(100), GETDATE(), 104);--08.01.2018 Select CONVERT(varchar(100), GETDATE(), 5);--08-01-18 Select CONVERT(varchar(100), GETDATE(), 105);--08-01-2018 Select CONVERT(varchar(100), GETDATE(), 6);--08 01 18 Select CONVERT(varchar(100), GETDATE(), 106);--08 01 2018 Select CONVERT(varchar(100), GETDATE(), 7);--01 08, 18 Select CONVERT(varchar(100), GETDATE(), 107);--01 08, 2018 Select CONVERT(varchar(100), GETDATE(), 8);--18:02:28 Select CONVERT(varchar(100), GETDATE(), 108);--18:02:28 Select CONVERT(varchar(100), GETDATE(), 9);--01 8 2018 6:03:22:663PM Select CONVERT(varchar(100), GETDATE(), 109);--01 8 2018 6:03:22:663PM Select CONVERT(varchar(100), GETDATE(), 10);--01-08-18 Select CONVERT(varchar(100), GETDATE(), 110);--01-08-2018 Select CONVERT(varchar(100), GETDATE(), 11);--18/01/08 Select CONVERT(varchar(100), GETDATE(), 111);--2018/01/08 Select CONVERT(varchar(100), GETDATE(), 12);--180108 Select CONVERT(varchar(100), GETDATE(), 112);--20180108 Select CONVERT(varchar(100), GETDATE(), 13);--08 01 2018 18:08:32:910 Select CONVERT(varchar(100), GETDATE(), 113);--08 01 2018 18:08:32:910 Select CONVERT(varchar(100), GETDATE(), 14);--18:09:28:673 Select CONVERT(varchar(100), GETDATE(), 114);--18:09:28:673 Select CONVERT(varchar(100), GETDATE(), 20);--2018-01-08 18:10:02 Select CONVERT(varchar(100), GETDATE(), 120);--2018-01-08 18:10:02 Select CONVERT(varchar(100), GETDATE(), 21);--2018-01-08 18:11:36.033 Select CONVERT(varchar(100), GETDATE(), 121);--2018-01-08 18:11:36.033 --下面的沒有相對應的了 Select CONVERT(varchar(100), GETDATE(), 22);--01/08/18 6:14:32 PM Select CONVERT(varchar(100), GETDATE(), 23);--2018-01-08 Select CONVERT(varchar(100), GETDATE(), 24);--18:14:57 Select CONVERT(varchar(100), GETDATE(), 25);--2018-01-08 18:14:57.663 Select CONVERT(varchar(100), GETDATE(), 126);--2018-01-08T18:16:05.290 Select CONVERT(varchar(100), GETDATE(), 130);--21 ???? ?????? 1439 6:16:05:290PM Select CONVERT(varchar(100), GETDATE(), 131);--21/04/1439 6:16:05:290PM