SQL Server CONVERT() 函数
定义和用法
CONVERT() 函数将值(任何类型)转换为指定的数据类型。
另请参阅
SQL Server 参考手册:CAST() 函数
实例
例子 1
将表达式转换为 int:
SELECT CONVERT(int, 25.65);
例子 2
将一个表达式从一种数据类型转换为另一种数据类型(varchar):
SELECT CONVERT(varchar, 25.65);
例子 3
将一个表达式从一种数据类型转换为另一种数据类型(datetime):
SELECT CONVERT(datetime, '2017-08-25');
例子 4
将一个表达式从一种数据类型转换为另一种数据类型(varchar),并指定样式:
SELECT CONVERT(varchar, '2017-08-25', 101);
语法
CONVERT(data_type(length), expression, style)
参数
| 参数 | 描述 |
|---|---|
| data_type |
必需。要将表达式转换为的数据类型。 可以是以下类型之一:
|
| (length) |
可选。结果数据类型的长度。 适用于 char、varchar、nchar、nvarchar、binary 和 varbinary。 |
| expression | 必需。要转换为另一种数据类型的值。 |
| style | 可选。用于在数据类型之间进行转换的格式,例如日期或字符串格式。请见下面的表格: |
将 datetime 转换为字符:
| 不带世纪 | 带世纪 | 输入/输出 | 标准 |
|---|---|---|---|
| 0 | 100 | mon dd yyyy hh:miAM/PM | 默认 |
| 1 | 101 | mm/dd/yyyy | 美国 |
| 2 | 102 | yyyy.mm.dd | ANSI |
| 3 | 103 | dd/mm/yyyy | 英国/法国 |
| 4 | 104 | dd.mm.yyyy | 德国 |
| 5 | 105 | dd-mm-yyyy | 意大利 |
| 6 | 106 | dd mon yyyy | - |
| 7 | 107 | Mon dd, yyyy | - |
| 8 | 108 | hh:mm:ss | - |
| 9 | 109 | mon dd yyyy hh:mi:ss:mmmAM(或PM) | 默认 + 毫秒 |
| 10 | 110 | mm-dd-yyyy | 美国 |
| 11 | 111 | yyyy/mm/dd | 日本 |
| 12 | 112 | yyyymmdd | ISO |
| 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 | ODBC 规范(24小时制) |
| 21 | 121 | yyyy-mm-dd hh:mi:ss.mmm | ODBC 规范(24小时制) |
| 126 | yyyy-mm-ddThh:mi:ss.mmm | ISO8601 | |
| 127 | yyyy-mm-ddThh:mi:ss.mmmZ | ISO8601(带时区 Z) | |
| 130 | dd mon yyyy hh:mi:ss:mmmAM | Hijiri | |
| 131 | dd/mm/yy hh:mi:ss:mmmAM | Hijiri |
将 float 转换为 real:
| 值 | 解释 |
|---|---|
| 0 | 最多 6 位数字(默认)。 |
| 1 | 8 位数字。 |
| 2 | 16 位数字。 |
将 money 转换为字符:
| 值 | 解释 |
|---|---|
| 0 | 没有逗号分隔符,小数点右侧有 2 位数字。 |
| 1 | 有逗号分隔符,小数点右侧有 2 位数字。 |
| 2 | 没有逗号分隔符,小数点右侧有 4 位数字 |
技术细节
| 适用于: |
|
|---|