SQL Server中的逻辑函数介绍


Posted in SQL Server onMay 25, 2022

IIF: 根据布尔表达式计算为 true 还是 false,返回其中一个值。

IIF 是一种用于编写 CASE 表达式的快速方法。 它将传递的布尔表达式计算为第一个参数,然后根据计算结果返回其他两个参数之一。也即,如果布尔表达式为 true,则返回 true_value;如果布尔表达式为 false 或未知,则返回 false_value。 true_value 和 false_value 可以是任何类型。

语法:

IIF ( boolean_expression, true_value, false_value )

举例:

DECLARE @a int = 45, @b int = 40;  
SELECT IIF ( @a > @b, 'TRUE', 'FALSE' ) AS Result;

CHOOSE: 从值列表返回指定索引处的项。

CHOOSE 像索引一样进入数组中,其中,数组由跟在索引参数之后的各参数组成。 索引参数确定将返回以下哪些值。从 1 开始的索引

语法:

CHOOSE ( index, val_1, val_2 [, val_n ] )

举例:下面的示例从所提供的值列表中返回第三项。

SELECT CHOOSE ( 3, 'Manager', 'Director', 'Developer', 'Tester' ) AS Result;  --返回Developer

举例:以下示例返回雇佣员工时的季度。 MONTH 函数用于从 HireDate 列返回月份值。

USE AdventureWorks2012;  
GO  
SELECT JobTitle, HireDate, CHOOSE(MONTH(HireDate),'Winter','Winter', 'Spring','Spring','Spring','Summer','Summer',   
                                                  'Summer','Autumn','Autumn','Autumn','Winter') AS Quarter_Hired  
FROM HumanResources.Employee  
WHERE  YEAR(HireDate) > 2005  
ORDER BY YEAR(HireDate);

COALESCE: 按顺序计算变量并返回第一个不等于 NULL 的第一个表达式的当前值

例如,SELECT COALESCE(NULL, NULL, 'third_value', 'fourth_value'); 返回第三个值,因为第三个值是首个为非 Null 的值。如果所有参数都为 NULL,则 COALESCE返回 NULL

语法:

COALESCE ( expression [ ,...n ] )

举例:

SELECT Name, Color, ProductNumber, COALESCE(Color, ProductNumber) AS FirstNotNull FROM Products ;

SQL Server中的逻辑函数介绍

NULLIF:如果两个指定的表达式相等,则返回空值。如果两个表达式不相等,则 NULLIF 返回第一个 expression 的值。

例如,SELECT NULLIF(4,4) AS Same, NULLIF(5,7) AS Different; 为第一列(4 和 4)返回 NULL,因为两个输入值相同。 第二列返回第一个值 (5),因为两个输入值不同。

举例:

SELECT AVG(NULLIF(COALESCE(current_year, previous_year), 0.00)) AS 'Average Budget' FROM budgets;

到此这篇关于SQL Server逻辑函数的文章就介绍到这了。


Tags in this post...

SQL Server 相关文章推荐
SqlServer: 如何更改表的文件组?(进而改变存储位置)
Apr 05 SQL Server
SqlServer 垂直分表(减少程序改动)
Apr 16 SQL Server
如何有效防止sql注入的方法
May 25 SQL Server
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
Jun 30 SQL Server
SQL Server表分区删除详情
Oct 16 SQL Server
SQL Server查询某个字段在哪些表中存在
Mar 03 SQL Server
sql server偶发出现死锁的解决方法
Apr 10 SQL Server
SQL Server Agent 服务无法启动
Apr 20 SQL Server
SQL Server中的游标介绍
May 20 SQL Server
SQL Server中的逻辑函数介绍
May 25 SQL Server
SQL解决未能删除约束问题drop constraint
May 30 SQL Server
SQL Server删除表中的重复数据
May 25 #SQL Server
SQL Server中T-SQL标识符介绍与无排序生成序号的方法
May 25 #SQL Server
SQL Server一个字符串拆分多行显示或者多行数据合并成一个字符串
May 25 #SQL Server
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
May 25 #SQL Server
SQL Server使用PIVOT与unPIVOT实现行列转换
May 25 #SQL Server
SQL SERVER中的流程控制语句
May 25 #SQL Server
SQL Server中搜索特定的对象
May 25 #SQL Server
You might like
WINDOWS 2000下使用ISAPI方式安装PHP
2006/09/05 PHP
基于thinkPHP框架实现留言板的方法
2016/10/17 PHP
Windows服务器中PHP如何安装redis扩展
2019/09/27 PHP
JavaScript版代码高亮
2006/06/26 Javascript
javascript中字符串替换函数replace()方法与c# 、vb 替换有一点不同
2010/06/25 Javascript
引用外部js乱码问题分析及解决方案
2013/04/12 Javascript
JS代码防止SQL注入的方法(超简单)
2016/04/12 Javascript
AngularJS中的指令全面解析(必看)
2016/05/20 Javascript
详解nodejs中的process进程
2017/03/19 NodeJs
AngularJS 霸道的过滤器小结
2017/04/26 Javascript
vue项目中使用lib-flexible解决移动端适配的问题解决
2018/08/23 Javascript
在JavaScript中实现链式调用的实现
2019/12/24 Javascript
vue实现折线图 可按时间查询
2020/08/21 Javascript
Javascript call及apply应用场景及实例
2020/08/26 Javascript
vue created钩子函数与mounted钩子函数的用法区别
2020/11/05 Javascript
[02:42]完美大师赛主赛事淘汰赛第三日观众采访
2017/11/25 DOTA
[01:13:46]iG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python实现将内容分行输出
2015/11/05 Python
pygame实现俄罗斯方块游戏
2018/06/26 Python
Python2实现的图片文本识别功能详解
2018/07/11 Python
通过python3实现投票功能代码实例
2019/09/26 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
python super函数使用方法详解
2020/02/14 Python
Python双链表原理与实现方法详解
2020/02/22 Python
Python figure参数及subplot子图绘制代码
2020/04/18 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T
2020/06/22 Python
使用Python Tkinter实现剪刀石头布小游戏功能
2020/10/23 Python
python连接mongodb数据库操作数据示例
2020/11/30 Python
CSS3动画animation实现云彩向左滚动
2014/05/09 HTML / CSS
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
Johnson Fitness澳大利亚:高级健身器材
2021/03/16 全球购物
高二化学教学反思
2014/01/30 职场文书
宣传口号大全
2014/06/16 职场文书
小学生组织委员竞选稿
2015/11/21 职场文书
七年级生物教学反思
2016/02/20 职场文书