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

目标系统所提供的数据类型,包括 bigintsql_variant 。不能使用用户定义的数据类型。

length

ncharnvarcharcharvarcharbinaryvarbinary 数据类型的可选参数。

style

日期格式样式,借以将 datetimesmalldatetime 数据转换为字符数据(ncharnvarcharcharvarcharncharnvarchar 数据类型);或者字符串格式样式,借以将 floatrealmoneysmallmoney 数据转换为字符数据(ncharnvarcharcharvarcharncharnvarchar 数据类型)。
------------------------------------------------------------------------------------------------------------------------------------------------
用法:
SELECT 
    CASE name 
        WHEN 'aa' THEN 'peter' 
        WHEN 'dd' THEN 'bill' 
        ELSE name END AS name, 
        CAST(name AS varchar(25)) AS '姓名'
FROM [User]

posted @ 2008-07-11 16:08  Mashimaro  阅读(5271)  评论(1)    收藏  举报