MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函數(shù)的用法解讀
MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函數(shù)
IF()
IF(expr1,expr2,expr3):
如果expr1的值為true,則返回expr2的值,如果expr1的值為false,則返回expr3的值。類似三目運(yùn)算符
IFNULL()
IFNULL(expr1,expr2):
如果expr1的值為null,則返回expr2的值,如果expr1的值不為null,則返回expr1的值。
NULLIF()
NULLIF(expr1,expr2):
如果expr1=expr2成立,那么返回值為null,否則返回值為expr1的值。
SELECT NULLIF('A','A'); -- 輸出結(jié)果:null SELECT NULLIF('A','B'); -- 輸出結(jié)果:A
ISNULL()
ISNULL(expr):
如果expr的值為null,則返回1,如果expr1的值不為null,則返回0。
SELECT ISNULL(NULL); -- 輸出結(jié)果:1 SELECT ISNULL('HELLO'); -- 輸出結(jié)果:0
INSTR()
INSTR函數(shù)為字符查找函數(shù),其功能是查找一個(gè)字符串在另一個(gè)字符串中首次出現(xiàn)的位置。
在此函數(shù)中可以自定義查找的初始位置,與出現(xiàn)次數(shù)的位置。
在一些特定的sql查詢中可以替換like進(jìn)行模糊查詢,可以代替in判斷包含關(guān)系
- 在abcd中查找a的位置,從第一個(gè)字母開始查,查找第一次出現(xiàn)時(shí)的位置
select instr(‘a(chǎn)bcd','a',1,1) from dual; —1 select instr(‘a(chǎn)bcd','c',1,1) from dual; —3 select instr(‘a(chǎn)bcd','e',1,1) from dual; —0
- 應(yīng)用于模糊查詢:instr(字段名/列名, ‘查找字段’)
select code,name,dept,occupation from staff where instr(code, ‘001')> 0;
- 等同于
select code, name, dept, occupation from staff where code like ‘%001%' ;
- 應(yīng)用于判斷包含關(guān)系:
select ccn,mas_loc from mas_loc where instr(‘FH,FHH,FHM',ccn)>0;
- 等同于
select ccn,mas_loc from mas_loc where ccn in (‘FH','FHH','FHM');
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
通過yum方式安裝mySql數(shù)據(jù)庫的全過程
當(dāng)工作需要部署mysql時(shí),通過手動(dòng)上傳安裝包以及依賴包的方式安裝mysql會(huì)比較麻煩,可以添加官方y(tǒng)um源,來實(shí)現(xiàn)自動(dòng)安裝依賴,方便快捷,下面這篇文章主要給大家介紹了關(guān)于通過yum方式安裝mySql數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下2022-07-07MySQL復(fù)合查詢操作實(shí)戰(zhàn)案例
這篇文章主要給大家介紹了關(guān)于MySQL復(fù)合查詢操作的相關(guān)資料,MySQL復(fù)合查詢是指在一個(gè)SQL語句中使用多個(gè)查詢條件,以過濾和檢索數(shù)據(jù),需要的朋友可以參考下2023-08-08Mysql| 使用通配符進(jìn)行模糊查詢?cè)斀?like,%,_)
這篇文章主要介紹了Mysql| 使用通配符進(jìn)行模糊查詢?cè)斀?like,%,_),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-08-08MySql連接數(shù)據(jù)庫常用參數(shù)及代碼解讀
這篇文章主要介紹了MySql連接數(shù)據(jù)庫常用參數(shù)及代碼解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02MySQL字符串日期格式轉(zhuǎn)換的幾種常用方法例子解析
這篇文章主要給大家介紹了MySQL字符串日期格式轉(zhuǎn)換的幾種常用方法例子解析,MySQL提供了多種函數(shù)來處理字符串日期格式的轉(zhuǎn)換,這些函數(shù)可以幫助用戶在不同的日期格式之間進(jìn)行轉(zhuǎn)換,以及進(jìn)行日期的加減和時(shí)間戳的轉(zhuǎn)換操作,需要的朋友可以參考下2024-11-11