MS SQL Server的COALESCE函数
MS SQL Server的COALESCE函数是从一系列表达式中返回第一个NOT NULL的值。

检查[B],[Q],[S],[T],[U]的值:
检查顺序[B]->[Q]->[S]->[T]->[U],只要一遇上NOT NULL时,即刻返回。
IF OBJECT_ID('tempdb.dbo.#Part_summary') IS NOT NULL DROP TABLE #Part_summary
CREATE TABLE #Part_summary (
[Item] NVARCHAR(40),
[B]DECIMAL(18,2),
[Q]DECIMAL(18,2),
[S]DECIMAL(18,2),
[T]DECIMAL(18,2),
[U]DECIMAL(18,2)
)
INSERT INTO #Part_summary ([Item],[B],[Q],[S],[T],[U])
VALUES ('098-SSSS1-WS0098-5526',NULl,NULl,500.00,NULl,NULl),
('54F-ART43-6545NN-2514',NULl,NULl,934.39,NULl,NULl),
('872-RTDE3-Q459PW-2323',NULl,346.43,NULl,452.44,NULl),
('B78-F1H2Y-5456UD-2530',234.22,NULl,NULl,115.06,NULl),
('I32-GG443-QT0098-0001',NULl,NULl,423.65,NULl,NULl),
('I38-AA321-WS0098-0506',470.87,NULl,NULl,NULl,345.41),
('K38-12321-5456UD-3493',200.28,NULl,NULl,398.55,NULl),
('PO0-7G7G7-JJY098-0077',NULl,871.33,543.00,NULl,NULl),
('RVC-43ASE-H43QWW-9753',NULl,564.96,NULl,NULl,555.19),
('X3C-SDEWE-3ER808-8764',NULl,607.88,NULl,NULl,NULl)
SELECT [Item],[B],[Q],[S],[T],[U] FROM #Part_summary
SELECT [Item],COALESCE([B],[Q],[S],[T],[U]) AS [result] FROM #Part_summary
Source Code
再列一个例子:

IF OBJECT_ID('tempdb.dbo.#Part_summary') IS NOT NULL DROP TABLE #Part_summary
CREATE TABLE #Part_summary (
[Item] NVARCHAR(40),
[B]DECIMAL(18,2),
[Q]DECIMAL(18,2),
[S]DECIMAL(18,2),
[T]DECIMAL(18,2),
[U]DECIMAL(18,2)
)
INSERT INTO #Part_summary ([Item],[B],[Q],[S],[T],[U])
VALUES ('54F-ART43-6545NN-2514',NULl,NULl,NULl,NULl,934.39),
('872-RTDE3-Q459PW-2323',NULl,NULl,NULl,452.44,NULl),
('B78-F1H2Y-5456UD-2530',NULl,NULl,115.06,NULl,NULl),
('I32-GG443-QT0098-0001',NULl,607.88,NULl,NULl,NULl),
('I38-AA321-WS0098-0506',470.87,NULl,NULl,NULl,NULl)
SELECT [Item],[B],[Q],[S],[T],[U] FROM #Part_summary
SELECT [Item],COALESCE([B],[Q],[S],[T],[U]) AS [result] FROM #Part_summary
Source Code
MS SQL Server的COALESCE函数的更多相关文章
- SQL Server中COALESCE函数的用法
在SQL Server中COALESCE函数,会返回其参数中第一个不为NULL的参数,效果如下: SELECT COALESCE(NULL,NULL,N'A',NULL,NULL) 结果: SELEC ...
- MS SQL Server时间常用函数
SQLServer时间日期函数详解,SQLServer,时间日期, 1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础 ...
- MS SQL Server字符拆分函数
Insus.NET以前有用XQuery的nodes()方法写过一个函数,是MS SQL字符拆分的函数,http://www.cnblogs.com/insus/archive/2012/02/26/2 ...
- 解决MS SQL Server 使用HashBytes函数乱码问题
HASHBYTES 语法(参考MSDN): HASHBYTES ( '<algorithm>', { @input | 'input' } ) <algorithm>::= M ...
- MS SQL Server中数据表、视图、函数/方法、存储过程是否存在判断及创建
前言 在操作数据库的时候经常会用到判断数据表.视图.函数/方法.存储过程是否存在,若存在,则需要删除后再重新创建.以下是MS SQL Server中的示例代码. 数据表(Table) 创建数据表的时候 ...
- (转载)MS SQL Server 未公开的加密函数有哪些?
MS SQL Server 未公开的加密函数有哪些? 以下的文章是对MS SQL Server 未公开的加密函数的具体操作,如果你对其相关的实际操作有兴趣的话,你就可以点击了. MS SQL Serv ...
- MS SQL Server的LTRIM,RTRIM和TRIM函数
在MS SQL Server 2017有了一个新函数TRIM,整合以前版本LTRIM和RTRIM. 这几个函数都是去除字符串头部后尾部的空格. DECLARE @str NVARCHAR(MAX) = ...
- sql server中常用方法函数
SQL SERVER常用函数 1.DATEADD在向指定日期加上一段时间的基础上,返回新的 datetime 值. (1)语法: DATEADD ( datepart , number, date ) ...
- MS SQL SERVER 中的系统表
MS SQL SERVER 中的系统表 序号 名称 说明 备注 1 syscolumns 每个表和视图中的每列在表中占一行,存储过程中的每个参数在表中也占一行. 2 syscomments 包含每 ...
随机推荐
- 7 Types of Regression Techniques
https://www.analyticsvidhya.com/blog/2015/08/comprehensive-guide-regression/ What is Regression Anal ...
- Bloom Filters
http://pages.cs.wisc.edu/~cao/papers/summary-cache/node8.html A Bloom filter is a method for represe ...
- 【linux】如何查看进程运行在那颗cpu上
这里介绍一种方法查看进程运行在哪个cpu上, 首先top 然后按字母:f 按字母:j 回车即可 其中P列表示进程运行在哪个CPU上
- ceph分布式存储系统初探
前言 由于公司的业务调整,现在我又要接触ceph这个东西,由于我接手的是一个网盘类项目,所以分布式存储系统ceph就是我必须要学的了.现在压力还是比较大的,从业务直接到后台核心. 大概在这几天,我将c ...
- 多线程(三) iOS中的锁
锁的类别:互斥锁,递归锁,条件锁,自旋锁等 锁的实现方式:NSLock,NSRecursiveLock, NSConditionLock,@synchronized,GCD的信号量等 下面说一下常用的 ...
- MVC常见错误记录
1 找到了多个与名为“Home”的控制器匹配的类型.如果为此请求(“{controller}/{action}/{id}”)提供服务的路由没有指定命名空间来搜索匹配此请求的 根项目下的RouteCon ...
- Codeforces Round #551 (Div. 2) A~E题解
突然发现上一场没有写,那就补补吧 本来这场应该5题的,结果一念之差E fail了 A. Serval and Bus 基本数学不解释,假如你没有+1 -1真的不好意思见人了 #include<c ...
- 【html学习整理】常用标签
什么是html 超文本标记语言 html语法规则 所有的命令放到<> 大部分成对存在,以<tag>开始,</tag>结束 网页的基本框架,常用的标记 & ...
- ansible mysql模块的使用今年
摘自: https://www.ibm.com/developerworks/cn/linux/1502_lih_ansible/
- 虚拟参考站(VRS)
来源:https://www.sohu.com/a/149415053_391994 一.高精度定位 VRS是虚拟参考站(Virtual Reference Station)的简称.这项技术是CORS ...