CONVERT (SQL Server Compact Edition)
明確地將某資料類型的運算式轉換成另一個運算式。
語法
CONVERT ( data_type [ ( length ) ] ,expression [ ,style ] )
引數
- data_type
目標系統提供的資料類型,包括 bigint 與 sql_variant。但是使用者定義的資料類型無法使用。如需可用資料類型的詳細資訊,請參閱<資料類型>。
- 長度
nchar、nvarchar、char、varchar、binary 或 varbinary 資料類型的選擇性參數。
- 運算式
任何有效的 SQL Server Compact Edition 運算式。如需詳細資訊,請參閱<運算式 (SQL Server Compact Edition)>。
style
用來將 datetime 或 smalldatetime 資料轉換成字元資料 (nchar、nvarchar、char、varchar、nchar 或 nvarchar 資料類型) 所使用的日期格式樣式,或者是當您要將 float、 real、money 或 smallmoney 資料轉換成字元資料 (nchar、nvarchar、 char、varchar、nchar 或 nvarchar 資料類型) 時所使用的字串格式。如果 style 是 NULL,則傳回的結果也是 NULL。如需詳細資訊,請參閱此主題稍後的「備註」一節。
備註
SQL Server 2005 Compact Edition (SQL Server Compact Edition) 支援阿拉伯文樣式的日期格式,並使用科威特演算法。
以下資料表最左邊的兩個資料行代表要將 datetime 或 smalldatetime 轉換成字元資料時所使用的 style 值。將 style 的值加上 100,可得出含有世紀 (yyyy) 的四位數年份。
沒有標示世紀 (yy) | 有標示世紀 (yyyy) | 標準 | 輸入/輸出** |
---|---|---|---|
- |
0 或 100 (*) |
預設 |
mon dd yyyy hh:miAM (或 PM) |
1 |
101 |
美國 |
mm/dd/yyyy |
2 |
102 |
ANSI |
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:mmmAM (或 PM) |
10 |
110 |
美國 |
mm-dd-yy |
11 |
111 |
日本 |
yy/mm/dd |
12 |
112 |
ISO |
yymmdd |
- |
13 或 113 (*) |
歐洲預設值 + 毫秒 |
dd mon yyyy hh:mm:ss:mmm(24h) |
14 |
114 |
- |
hh:mi:ss:mmm(24h) |
- |
20 或 120 (*) |
ODBC 標準 |
yyyy-mm-dd hh:mi:ss(24h) |
- |
21 或 121 (*) |
ODBC 標準 (含有毫秒) |
yyyy-mm-dd hh:mi:ss.mmm(24h) |
- |
126(***) |
ISO8601 |
yyyy-mm-ddThh:mm:ss.mmm(沒有空格) |
- |
130* |
Hijri**** |
dd mon yyyy hh:mi:ss:mmmAM |
- |
131* |
Hijri**** |
dd/mm/yy hh:mi:ss:mmmAM |
* 預設值 (style 0 或 100、9 或 109、13 或 113、20 或 120 以及 21 或 121) 皆會傳回世紀年份 (yyyy)。
** 當您轉換成 datetime 的輸入資料。當您轉換成字元資料時的輸出資料。
*** 專為 XML 使用的設計。將 datetime 或 smalldatetime 轉換成 character 資料時,其輸出格式如以下資料表所示。將 float、money 或 smallmoney 轉換成 character 資料時,其輸出結果與 style 2 相等。而將 real 轉換成 character 資料時,則輸出結果與 style 1 相等。
****Hijri 是一個擁有多種變化的日曆系統,SQL Server Compact Edition 採用的是科威特演算法。
以下資料表顯示要將 float 或 real 轉換成字元資料時所使用的 style 值。
值 | 輸出 |
---|---|
0 (預設值) |
最長可為 6 位數字。必要時請使用科學標記法。 |
1 |
固定為 8 位數字。總是使用科學標記法。 |
2 |
總是為 16 位數字。總是使用科學標記法。 |
以下資料表內最左邊的資料行代表要將 money 或 smallmoney 轉換成字元資料時所使用的 style 值。
值 | 輸出 |
---|---|
0 (預設值) |
小數點左方沒有逗號,小數點右方可以有 2 位數字。範例:4235.98。 |
1 |
小數點左方每隔 3 位數就有一個逗號,小數點右方則有 2 位數字。範例:3,510.92。 |
2 |
小數點左方沒有逗號,小數點右方可以有 4 位數字。範例:4235.9819。 |
當您要將 numeric 或 decimal 資料轉換成字元資料時,把 style 設為 128,便可將結果集尾端的零全部去除。
下圖說明 SQL Server Compact Edition 中的明確與隱含兩種資料轉換的方式。
範例
以下範例將 datetime 值轉換成 nvarchar 值。
SELECT OrderDate, CONVERT(nvarchar(10), OrderDate, 101)
FROM Orders