CAST 和 CONVERT 用法
来源:互联网 发布:java文件读写代码 编辑:程序博客网 时间:2024/04/26 14:23
CAST 和 CONVERT (Transact-SQL)
将一种数据类型的表达式转换为另一种数据类型的表达式。
【语法】
Syntax for CAST:
CAST ( expression AS data_type [ ( length ) ] )
Syntax for CONVERT:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
【参数说明】
expression :任何有效的表达式。
data_type :目标数据类型。这包括 xml、bigint 和 sql_variant。不能使用别名数据类型。
length :指定目标数据类型长度的可选整数。默认值为 30。
style :指定 CONVERT 函数如何转换 expression 的整数表达式。如果样式为 NULL,则返回 NULL。该范围是由 data_type 确定的。
【返回值】
返回转换为 data_type 的 expression。
【样式(style)】
Date 和 Time 样式
如果 expression 为 date 或 time 数据类型,则 style 可以为下表中显示的值之一。其他值作为 0 进行处理。
不带世纪数位 (yy) (1)
带世纪数位 (yyyy)
标准
输入/输出 (3)
-
0 或 100 (1, 2)
默认
mon dd yyyy hh:miAM(或 PM)
1
101
美国
mm/dd/yyyy
2
102
ANSI
yy.mm.dd
3
103
英国/法国
dd/mm/yyyy
4
104
德国
dd.mm.yy
5
105
意大利
dd-mm-yy
6
106 (1)
-
dd mon yy
7
107 (1)
-
mon dd, yy
8
108
-
hh:mi:ss
-
9 或 109 (1, 2)
默认设置 + 毫秒
mon dd yyyy hh:mi:ss:mmmAM(或 PM)
10
110
美国
mm-dd-yy
11
111
日本
yy/mm/dd
12
112
ISO
yymmdd或yyyymmdd
-
13 或 113 (1, 2)
欧洲默认设置 + 毫秒
dd mon yyyy hh:mi:ss:mmm(24h)
14
114
-
hh:mi:ss:mmm(24h)
-
20 或 120 (2)
ODBC 规范
yyyy-mm-dd hh:mi:ss(24h)
-
21 或 121 (2)
ODBC 规范(带毫秒)
yyyy-mm-dd hh:mi:ss.mmm(24h)
-
126 (4)
ISO8601
yyyy-mm-ddThh:mi:ss.mmm(无空格)
-
127(6, 7)
带时区 Z 的 ISO8601。
yyyy-mm-ddThh:mi:ss.mmmZ(无空格)
-
130 (1, 2)
回历 (5)
dd mon yyyy hh:mi:ss:mmmAM
-
131 (2)
回历 (5)
dd/mm/yy hh:mi:ss:mmmAM
float 和 real 样式
如果 expression 为 float 或 real,则 style 可以为下表中显示的值之一。其他值作为 0 进行处理。
值
输出
0(默认值)
最多包含 6 位。根据需要使用科学记数法。
1
始终为 8 位值。始终使用科学记数法。
2
始终为 16 位值。始终使用科学记数法。
126, 128, 129
为了保持向后兼容而包括在内,在以后的版本中可能不推荐使用。
money 和 smallmoney 样式
如果 expression 为 money 或 smallmoney,则 style 可以为下表中显示的值之一。其他值作为 0 进行处理。
值
输出
0(默认值)
小数点左侧每三位数字之间不以逗号分隔,小数点右侧取两位数,例如 4235.98。
1
小数点左侧每三位数字之间以逗号分隔,小数点右侧取两位数,例如 3,510.92。
2
小数点左侧每三位数字之间不以逗号分隔,小数点右侧取四位数,例如 4235.9819。
126
转换为 char(n) 或 varchar(n) 时,等同于样式 2
xml 样式
如果 data_type 为 xml,则 style 可以为下表中显示的值之一。其他值作为 0 进行处理。
值
输出
0(默认值)
使用默认的分析行为,即放弃无用的空格,且不允许使用内部 DTD 子集。
1
保留无用空格。此样式设置将默认的 xml:space 处理方式设置为与指定了 xml:space="preserve" 的行为相同。
2
启用有限的内部 DTD 子集处理。
3
保留无用空格,并启用有限的内部 DTD 子集处理。
二进制样式
如果 expression 为 binary(n)、varbinary(n)、char(n) 或 varchar(n),则 style 可以为下表中显示的值之一。表中没有列出的样式值将返回错误。
值
输出
0(默认值)
将 ASCII 字符转换为二进制字节,或者将二进制字节转换为 ASCII 字符。每个字符或字节按照 1:1 进行转换。
如果 data_type 为二进制类型,则会在结果左侧添加字符 0x。
1, 2
如果 data_type 为二进制类型,则表达式必须为字符表达式。expression 必须由数量为偶数的十六进制数字(0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、a、b、c、d、e、f)组成。如果将 style 设置为 1,字符 0x 必须为表达式中的前两个字符。如果表达式中包含的字符数为奇数或者包含任何无效的字符,则会引发错误。
如果转换后的表达式长度大于 data_type 长度,则会在右侧截断结果。
如果固定长度 data_types 大于转换后的结果,则会在结果右侧添加零。
如果 data_type 为字符类型,则表达式必须为二进制表达式。每个二进制字符均转换为两个十六进制字符。如果转换后的表达式长度大于 data_type 长度,则会在右侧截断结果。
如果 data_type 为固定大小的字符类型,并且转换后的结果长度小于其 data_type 长度,则会在转换后的表达式右侧添加空格,以使十六进制数字的个数保持为偶数。
对于 style 1,将在转换后的结果左侧添加字符 0x。
- CAST 和 CONVERT 用法
- cast 和convert用法详解
- CAST 和 CONVERT的用法和区别
- 数据库中CAST 和 Convert 的用法
- SQL中的cast和convert用法示例
- MySQL 的CAST()和CONVERT()用法
- SQL中的cast和convert的用法
- SQL中的cast和convert的用法和区别
- SQL中的cast和convert的用法和区别
- CAST 和 CONVERT
- sql--CAST 和 CONVERT
- 有关 CAST 和 CONVERT
- [ztjSQL]CAST 和 CONVERT
- CAST 和 CONVERT
- CAST 和 Convert
- CAST 和 CONVERT
- Sql CAST和CONVERT
- Convert 和 Cast 区别
- UBUNTU10.04 安装C#运行环境
- IMPLEMENTING FAST-START FAILOVER IN 10GR2 DATAGUARD BROKER ENVIRONMENT [ID 359555.1]
- aspnet_merge.exe”已退出,代码为1的错误的解决方法
- 求促销方式(买几赠几方式)中的纯订货量算法
- 开发基于 Nutch 的集群式搜索引擎
- CAST 和 CONVERT 用法
- 用正则表达式在文本中搜索字符串
- 使用Mysql官方工具辅助配置my.cnf
- JCheckBox
- jQuery中的函数不执行
- LOOKING FOR THE WEBSITE DESIGNE MANAGER 5-10YEARS EXPERIENCE
- 在486上初试Damn Small Linux ( DSL )
- 零碎的小知识点 ----------C# ToString()函数注意事项
- MFC之贪吃蛇