[quote]
COALESCE()函数
---简介---
T-SQL的COALESCE()函数能够让你指定多个表达式,而且COALESCE()会返回组里第一个非空的值。要使用下面的形式,其中expression可以是任何数据类型,并能够等于大多数合法的表达式:
COALESCE (expression [,…n])--(与CASE函数等价)
CASE
WHEN (expression1 IS NOT NULL) THEN expression1
...
WHEN (expressionN IS NOT NULL) THEN expressionN
ELSE NULL
如果所有自变量(expression1-N)均为 NULL,则 COALESCE 返回 NULL 值。
---示例---
create database dbTest
use dbTest
create table basic
(
[id] int identity(1,1) primary key,
[length] decimal null,
[height] decimal null,
[width] decimal null
)
插入一条数据:
insert into basic values(null,null,null)
查询语句:
select coalesce(length,height,width) from basic
--查询结果:NULL
插入下列数据:
insert into basic values(1.00,null,null)
insert into basic values(2.00,null,null)
insert into basic values(3.00,null,null)
insert into basic values(null,4.00,null)
insert into basic values(null,5.00,null)
insert into basic values(null,6.00,null)
insert into basic values(null,null,7.00)
insert into basic values(null,null,8.00)
insert into basic values(null,null,9.00)
查询语句:
★ select coalesce(max(height),0)+1.00 from basic
★ select cast(coalesce(length * 2, height, width * 3) as decimal ) as 'Total List' from basic
查询结果:
★7.00
★2、4、6、4、5、6、21、24、27;
/*我们一般用它来检索索引(顺序号,层次号),最大者id*/
[/quote]
COALESCE()函数
---简介---
T-SQL的COALESCE()函数能够让你指定多个表达式,而且COALESCE()会返回组里第一个非空的值。要使用下面的形式,其中expression可以是任何数据类型,并能够等于大多数合法的表达式:
COALESCE (expression [,…n])--(与CASE函数等价)
CASE
WHEN (expression1 IS NOT NULL) THEN expression1
...
WHEN (expressionN IS NOT NULL) THEN expressionN
ELSE NULL
如果所有自变量(expression1-N)均为 NULL,则 COALESCE 返回 NULL 值。
---示例---
create database dbTest
use dbTest
create table basic
(
[id] int identity(1,1) primary key,
[length] decimal null,
[height] decimal null,
[width] decimal null
)
插入一条数据:
insert into basic values(null,null,null)
查询语句:
select coalesce(length,height,width) from basic
--查询结果:NULL
插入下列数据:
insert into basic values(1.00,null,null)
insert into basic values(2.00,null,null)
insert into basic values(3.00,null,null)
insert into basic values(null,4.00,null)
insert into basic values(null,5.00,null)
insert into basic values(null,6.00,null)
insert into basic values(null,null,7.00)
insert into basic values(null,null,8.00)
insert into basic values(null,null,9.00)
查询语句:
★ select coalesce(max(height),0)+1.00 from basic
★ select cast(coalesce(length * 2, height, width * 3) as decimal ) as 'Total List' from basic
查询结果:
★7.00
★2、4、6、4、5、6、21、24、27;
/*我们一般用它来检索索引(顺序号,层次号),最大者id*/
[/quote]
本文详细介绍了T-SQL中的COALESCE函数,该函数用于返回多个表达式中的第一个非空值。通过具体示例展示了如何使用COALESCE函数进行数据处理,包括查询非空的最大值和计算基于非空字段的表达式。
304

被折叠的 条评论
为什么被折叠?



