SQL SERVER 2005 coalesce 的使用

 

转载:http://blog.csdn.net/ChaoYang0502/archive/2008/08/28/2845105.aspx

 

<script type="text/javascript"> document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (text && text.length>300) { text = text + "/r/n/n本文来自CSDN博客,转载请标明出处:" + location.href; clipboardData.setData("text", text); } }, 100); } } </script> <script class="blogstory">function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script> COALESCE
返回其参数中第一个非空表达式。 语法
COALESCE ( expression [ ,...n ] ) 参数
expression 任何类型的表达式。 n 表示可以指定多个表达式的占位符。所有表达式必须是相同类型,或者可以隐性转换为相同的类型。 返回类型
将相同的值作为 expression 返回。 注释
如果所有自变量均为 NULL,则 COALESCE 返回 NULL 值。 COALESCE(expression1,...n) 与此 CASE 函数等价: CASE
WHEN (expression1 IS NOT NULL) THEN expression1
...
WHEN (expressionN IS NOT NULL) THEN expressionN
ELSE NULL

 

   SET NOCOUNT ON
 GO
 IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
 WHERE TABLE_NAME = '#wages')
 DROP TABLE #wages
 GO
 CREATE TABLE #wages
(
 emp_id tinyint identity,
 hourly_wage decimal NULL,
 salary decimal NULL,
 commission decimal NULL,
 num_sales tinyint NULL
 )
 GO
 INSERT #wages VALUES(10.00, NULL, NULL, NULL)
 INSERT #wages VALUES(20.00, NULL, NULL, NULL)
INSERT #wages VALUES(30.00, NULL, NULL, NULL)
 INSERT #wages VALUES(40.00, NULL, NULL, NULL)
 INSERT #wages VALUES(NULL, 10000.00, NULL, NULL)
INSERT #wages VALUES(NULL, 20000.00, NULL, NULL)
 INSERT #wages VALUES(NULL, 30000.00, NULL, NULL)
 INSERT #wages VALUES(NULL, 40000.00, NULL, NULL)
 INSERT #wages VALUES(NULL, NULL, 15000, 3)
 INSERT #wages VALUES(NULL, NULL, 25000, 2)
 INSERT #wages VALUES(NULL, NULL, 20000, 6)
 INSERT #wages VALUES(NULL, NULL, 14000, 4)

 GO
 SET NOCOUNT OFF
 GO
 SELECT * FROM #wages
 GO
 SELECT CAST(COALESCE(hourly_wage,salary,commission ,num_sales) AS money) AS 'Total Salary'
 FROM #wages

 GO


drop table  #wages

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值