SQL SERVER 2012新增函数之逻辑函数IIF
前言
SQL SERVER 2012中新增了IIF函数,这个函数在VB或是ACCESS中是存在的。感兴趣的朋友们下面来一起学习学习吧。
格式如下
iif(布尔表达式,value1,value2)
也就是说如果表达式成立,那么就返回value1,如果不成立,就返回value2.
示例如下
例如:
select iif(30>45,'对','错') as 结果 /* 结果 ---- 错 */ select iif(null=null,'对','错') as 结果 /* 结果 ---- 错 */ select iif(null is null,'对','错') as 结果 /* 结果 ---- 对 */
这让我想起SQLSERVER之前有个函数叫NULLIF,如果两个指定的表达式相等,则返回空值。
declare @i int set @i=null select NULLIF(@i,null) /* NULL */
NULLIF上面返回NULL,并不说明两者相等,而是两者不相等时,返回前者,而前者的@i恰巧为NULL造成的。
总结
以上就是关于SQL SERVER 2012新增函数之逻辑函数IIF的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
SqlServer2012中First_Value函数简单分析
First_Value返回结果集中某列第一条数据的值,跟TOP 1效果一样,比较简单的一个函数 先贴测试用代码 DECLARE @TestData TABLE( ID INT IDENTITY(1,1), Department VARCHAR(20), LastName VARCHAR(20), Rate FLOAT ) INSERT INTO @TestData(Department,LastName,Rate) SELECT 'Document Control','Arifin',17.78
-
SQL SERVER 2012新增函数之字符串函数FORMAT详解
前言 本文主要介绍的是使用 FORMAT函数将日期/时间和数字值格式化为识别区域设置的字符串.下面话不多说,来看详细的介绍吧. 格式如下: format(value,format,culture) 第一个参数是要格式化的值,第二个是格式,第三个是区域,比如是中国,还是美国,还是大不列颠等等. FORMAT 依赖于 .NET Framework公共语言运行时 (CLR) 的存在. declare @date datetime = '2014-01-01' select FORMAT( @date,
-
SQL SERVER2012中新增函数之字符串函数CONCAT详解
介绍 SQLSERVER 2012新增了两个字符串函数CONCAT和FORMAT.本文首先介绍一下CONCAT,CONCAT函数的作用是可以返回多个字符串拼接后的结果. CONCAT 函数最多可以连接255个字符变量,当调用这个函数的时候需要至少接收两个参数,参数类型不一定是字符串类型,也可以是可以隐式转换为字符串的类型比如int ,float等类型.只要符合sql 2012的能隐式转换为字符串的规则即可,当我们想把两个值类型的数据连接起来的时候,不需要先将它们转为nvarchar然后再通过"+
-
SQL SERVER 2012新增函数之逻辑函数CHOOSE详解
SQL SERVER 2012中新增了CHOOSE,该函数可以从值列表返回指定索引处的项. 例如: select CHOOSE(3,'A','B','C','D') as R1 /* R1 ---- C */ CHOOSE并不能这么用,例如有个字符串'A,B,C,D',我们并不能用choose得到其中的某个值: select choose(2,'A,B,C,D') /* null */ CHOOSE的主要功能和CASE WHEN类似,例如数据库中有字段Sex:1表示男,2表示女. if obje
-
Sql Server 2012 转换函数的比较(Cast、Convert和Parse)
语法结构: 1. Cast 语法结构:CAST ( expression AS data_type [ ( length ) ] ) 2. Convert 语法结构:CONVERT ( data_type [ ( length ) ] , expression [ , style ] ) 3. Parse 语法结构:PARSE ( string_value AS data_type [ USING culture ] ) 其中,Parse 为 Sql Server 的新特性 expression
-
SqlServer2012中LEAD函数简单分析
LEAD函数简单点说,就是把下一行的某列数据提取到当前行来显示,看示例更能解释清楚,先看测试用脚本 DECLARE @TestData TABLE( ID INT IDENTITY(1,1), Department VARCHAR(20), LastName VARCHAR(20), Rate FLOAT ) INSERT INTO @TestData(Department,LastName,Rate) SELECT 'Document Control','Arifin',17.7885 UNI
-
SQL Server 2012 开窗函数
废话不多说了,直接给大家贴代码了,具体代码如下所示: -- 开窗函数:在结果集的基础上进一步处理(聚合操作) -- Over函数,添加一个字段显示最大年龄 SELECT * , MAX(StuAge) OVER ( ) MaxStuAge FROM dbo.Student; -- Over函数,添加一个字段显示总人数 SELECT * , COUNT(StuID) OVER ( ) StuCount FROM dbo.Student; -- Partition By 分组统计数量 -- 根据性别
-
SQL SERVER 2012新增函数之逻辑函数IIF
前言 SQL SERVER 2012中新增了IIF函数,这个函数在VB或是ACCESS中是存在的.感兴趣的朋友们下面来一起学习学习吧. 格式如下 iif(布尔表达式,value1,value2) 也就是说如果表达式成立,那么就返回value1,如果不成立,就返回value2. 示例如下 例如: select iif(30>45,'对','错') as 结果 /* 结果 ---- 错 */ select iif(null=null,'对','错') as 结果 /* 结果 ---- 错 */ se
-
SQL Server 2012 安装图解教程(附sql2012下载地址)
在安装微软最新数据库SQL Server 2012之前,编者先确定一下安装环境:Windonws 7 SP1,32位操作系统.CPU是2.1GHz赛扬双核T3500,内存2.93GB. sql2012下载 http://www.jb51.net/softs/79861.html 安装SQL Server 2012的软硬件环境参数 根据微软的下载提示,32位的Windows 7操作系统,只需下载列表最下面的CHSx86SQLFULL_x86_CHS_Core.box. CHSx86SQLFULL_
-
SQL Server 2012 开窗函数
废话不多说了,直接给大家贴代码了,具体代码如下所示: -- 开窗函数:在结果集的基础上进一步处理(聚合操作) -- Over函数,添加一个字段显示最大年龄 SELECT * , MAX(StuAge) OVER ( ) MaxStuAge FROM dbo.Student; -- Over函数,添加一个字段显示总人数 SELECT * , COUNT(StuID) OVER ( ) StuCount FROM dbo.Student; -- Partition By 分组统计数量 -- 根据性别
-
SQL Server 2012 FileTable 新特性详解
FileTable是基于FILESTREAM的一个特性.有以下一些功能: •一行表示一个文件或者目录. •每行包含以下信息: • •file_Stream流数据,stream_id标示符(GUID). •用户表示和维护文件及目录层次关系的path_locator和parent_path_locator •有10个文件属性 •支持对文件和文档的全文搜索和语义搜索的类型列. •filetable强制执行某些系统定义的约束和触发器来维护命名空间的语义 •针对非事务访问时,SQL Server配置FIL
-
Sql Server 2008R2升级Sql Server 2012图文教程
环境: Windows server 2008 r2 Standard +SqlServer2008R2 内网环境需要升级为SQL server 2012 升级安装时提示版本不支持 网上查询相关问题, 必须是SQL server2008 r2 sp1以上及需要安装Sp2补丁包才能升级为SQL server 2012 1)下载地址:微软官网 https://www.microsoft.com/zh-CN/download/details.aspx?id=30437 2)选择你对应的安装SQL se
-
SQL Server 2012使用Offset/Fetch Next实现分页数据查询
在Sql Server 2012之前,实现分页主要是使用ROW_NUMBER(),在SQL Server2012,可以使用Offset ...Rows Fetch Next ... Rows only的方式去实现分页数据查询. select [column1] ,[column2] ... ,[columnN] from [tableName] order by [columnM] offset (pageIndex-1)*pageSize rows fetch next pageSize r
随机推荐
- jQuery实现打开网页自动弹出遮罩层或点击弹出遮罩层功能示例
- 基于JavaScript实现动态添加删除表格的行
- Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
- 微信小程序 实现列表刷新的实例详解
- java ZXing生成二维码及条码实例分享
- linux下使用 du查看某个文件或目录占用磁盘空间的大小方法
- c# 在WebBrowser中用SendMessage模拟鼠标点击
- servlet之session工作原理简介_动力节点Java学院整理
- XenServer 安装及虚拟机部署详细指南
- C语言实现输入一个字符串后打印出该字符串中字符的所有排列
- JavaScript中的6种运算符总结
- JS+CSS 制作的超级简单的下拉菜单附图
- Lua中释放table占用内存的方法
- jQuery简单动画变换效果实例分析
- JS验证邮件地址格式方法小结
- 简洁的一个实现网页全屏代码
- 用PHP将Unicode 转化为UTF-8的实现方法(推荐)
- java使用颜色选择器示例分享
- 详解J2EE开发的网站部署到阿里云服务器的方法
- 基于Python打造账号共享浏览器功能