1. 概述
SQL Server 数据库中,不同类型的数据进行运算时;游优先级低的类型会自动转换为优先级搞得数据类型,即隐式转换;
当数据类型无法转换时,可使用转换函数将一种数据类型转换为另一种数据类型,即显式转换;
SQL Server 数据库中的类型转换函数包含两个:Cast 和 Convert,二者功能类似,但 Convert 函数的功能更强;
注意: 隐性转换对用户是不可见的,SQL Server 数据自动将数据从优先级低的数据转换为优先级搞得数据类型;
2. Cast 函数
Cast 函数
将表达式由一种数据类型转换为另一种数据类型;
Cast 函数的语法格式为:
Cast(expression As data_type[{length}])
expression 为任何有效的表达式;
参数 data_type 为目标数据类型,这包含 xml、bigint 和 sql_variant,不能使用别名数据类型;
参数 length 指定目标数据类型长度的可选整数,默认值为 30;
3. Convert 函数
Convert 函数
与 Cast 函数的功能类似,将表达式由一种数据类型为另一种数据类型;
Convert 函数的语法格式为:
Convert(data_type[{length}],expression[,style])
expression 为任何有效的表达式;
参数 data_type 为目标数据类型,这包括 xml、bigint 和 sql_variant,不能使用别名数据类型;
参数 length 指定目标数据类型长度的可选参数,默认值为 30;
参数 style 指定 Convert 函数如何转换 expression 的整数的表达式;
例子 1:获取系统当前时间,并以 ISO 格式输出
select CONVERT(char(10),getdate(),112)
例子 2:将字符串 “13.54” 转换为数值型数据并加上 5
select CONVERT(float,'13.54')+5