sql中CASE及CAST、CONVERT的用法
CASE
计算条件列表并返回多个可能结果表达式之一。
CAST
将某种数据类型的表达式显式转换为另一种数据类型。
CONVERT
与CAST提供相似的功能。
语法
简单 CASE 函数:
CASE input_expression
WHEN when_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
END
CASE 搜索函数:
CASE
WHEN Boolean_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
END
参数
input_expression
---------------------------------------------------------------------------------------------------------------
使用 CAST:
CAST ( expression AS data_type )
使用 CONVERT:
CONVERT (data_type[(length)], expression [, style])
参数
expression
是任何有效的 Microsoft® SQL Server™ 表达式。有关更多信息,请参见表达式。
data_type
目标系统所提供的数据类型,包括 bigint 和 sql_variant 。不能使用用户定义的数据类型。
length
nchar 、nvarchar 、char 、varchar 、binary 或 varbinary 数据类型的可选参数。
style
日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar 、nvarchar 、char 、varchar 、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float 、real 、money 或 smallmoney 数据转换为字符数据(nchar 、nvarchar 、char 、varchar 、nchar 或 nvarchar 数据类型)。
------------------------------------------------------------------------------------------------------------------------------------------------
用法:
SELECT
CASE name
WHEN 'aa' THEN 'peter'
WHEN 'dd' THEN 'bill'
ELSE name END AS name,
CAST(name AS varchar(25)) AS '姓名'
FROM [User]
浙公网安备 33010602011771号