網(wǎng)站首頁 編程語言 正文
IIF: 根據(jù)布爾表達(dá)式計(jì)算為 true 還是 false,返回其中一個(gè)值。
IIF 是一種用于編寫 CASE 表達(dá)式的快速方法。 它將傳遞的布爾表達(dá)式計(jì)算為第一個(gè)參數(shù),然后根據(jù)計(jì)算結(jié)果返回其他兩個(gè)參數(shù)之一。也即,如果布爾表達(dá)式為 true,則返回 true_value;如果布爾表達(dá)式為 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: 從值列表返回指定索引處的項(xiàng)。
CHOOSE 像索引一樣進(jìn)入數(shù)組中,其中,數(shù)組由跟在索引參數(shù)之后的各參數(shù)組成。 索引參數(shù)確定將返回以下哪些值。從 1 開始的索引
語法:
CHOOSE ( index, val_1, val_2 [, val_n ] )
舉例:下面的示例從所提供的值列表中返回第三項(xiàng)。
SELECT CHOOSE ( 3, 'Manager', 'Director', 'Developer', 'Tester' ) AS Result; --返回Developer
舉例:以下示例返回雇傭員工時(shí)的季度。 MONTH 函數(shù)用于從?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: 按順序計(jì)算變量并返回第一個(gè)不等于?NULL?的第一個(gè)表達(dá)式的當(dāng)前值
例如,SELECT COALESCE(NULL, NULL, 'third_value', 'fourth_value');
?返回第三個(gè)值,因?yàn)榈谌齻€(gè)值是首個(gè)為非 Null 的值。如果所有參數(shù)都為?NULL
,則?COALESCE
返回?NULL
。
語法:
COALESCE ( expression [ ,...n ] )
舉例:
SELECT Name, Color, ProductNumber, COALESCE(Color, ProductNumber) AS FirstNotNull FROM Products ;
NULLIF:如果兩個(gè)指定的表達(dá)式相等,則返回空值。如果兩個(gè)表達(dá)式不相等,則 NULLIF 返回第一個(gè) expression 的值。
例如,SELECT NULLIF(4,4) AS Same, NULLIF(5,7) AS Different;
?為第一列(4 和 4)返回 NULL,因?yàn)閮蓚€(gè)輸入值相同。 第二列返回第一個(gè)值 (5),因?yàn)閮蓚€(gè)輸入值不同。
舉例:
SELECT AVG(NULLIF(COALESCE(current_year, previous_year), 0.00)) AS 'Average Budget' FROM budgets;
原文鏈接:https://www.cnblogs.com/springsnow/p/10334721.html
相關(guān)推薦
- 2022-06-23 Python函數(shù)和模塊的使用詳情_python
- 2022-05-22 部署ASP.NET?Core程序到Windows系統(tǒng)_基礎(chǔ)應(yīng)用
- 2023-02-17 react生命周期(類組件/函數(shù)組件)操作代碼_React
- 2022-11-05 Kotlin方法與Lambda表達(dá)式實(shí)踐使用介紹_Android
- 2022-08-01 Python+Selenium鍵盤鼠標(biāo)模擬事件操作詳解_python
- 2022-10-18 Go語言TCP從原理到代碼實(shí)現(xiàn)詳解_Golang
- 2022-07-09 使用python獲取cpu每秒的使用率_python
- 2024-01-11 spring 事務(wù)控制 設(shè)置手動(dòng)回滾 TransactionAspectSupport.curren
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支