Case在sql server中的使用用法
CASE是SQL中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。CASE 语句在sql server跟其它程序语言中的switch功能类似,用于计算条件列表并返回多个可能结果表达式之一。
在sql server中CASE具有两种格式: a.简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。 b.CASE 搜索函数计算一组布尔表达式以确定结果。 以上两种格式都支持可选的 ELSE 参数。常见的几种CASE语句的用法如下所示:
1.CASE 函数用于计算多个条件并为每个条件返回单个值。CASE 函数通常的用途是使用可读性更强的值替换代码或缩写。下面的查询使用 CASE 函数重命名书籍的分类,以使之更易理解。 USE pubsSELECT CASE type WHEN 'popular_comp' THEN 'Popular Computing' WHEN 'mod_cook' THEN 'Modern Cooking' WHEN 'business' THEN 'Business' WHEN 'psychology' THEN 'Psychology' WHEN 'trad_cook' THEN 'Traditional Cooking' ELSE 'Not yet categorized' END AS Category, CONVERT(varchar(30), title) AS "Shortened Title", price AS PriceFROM titlesWHERE price IS NOT NULLORDER BY 1
2.使用带有简单 CASE 函数和 CASE 搜索函数的 SELECT 语句,CASE 函数的另一个用途给数据分类。下面的查询使用 CASE 函数对价格分类。SELECT CASE WHEN price IS NULL THEN 'Not yet priced' WHEN price < 10 THEN 'Very Reasonable Title' WHEN price >= 10 and price < 20 THEN 'Coffee Table Title' ELSE 'Expensive book!' END AS "Price Category",CONVERT(varchar(20), title) AS "Shortened Title"FROM pubs.dbo.titlesORDER BY price
想要了解更多,请关注下方平台>>
新浪微博:@享和邑正版软件商城
公众微信:享和邑
下一篇:怎样轻松设置好sql server 2012 java?
热门推荐: