日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Mysql中的IFNULL函数的详解(嵌套查询等重点)如果第一个为空就执行第二个

發布時間:2025/3/15 数据库 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mysql中的IFNULL函数的详解(嵌套查询等重点)如果第一个为空就执行第二个 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

https://blog.csdn.net/hanhanwanghaha寶藏女孩 歡迎您的關注!
歡迎關注微信公眾號:寶藏女孩的成長日記
如有轉載,請注明出處(如不注明,盜者必究)

目錄

  • 一、概念
  • 二、語法
  • 三、舉例
    • 創建表
    • 加入數據
      • 3.1舉例一
      • 3.2舉例二
      • 3.2舉例三
      • 3.4舉例四
        • 注意事項

一、概念

在mysql中IFNULL() 函數用于判斷第一個表達式是否為 NULL,如果第一個值不為NULL就執行第一個值。第一個值為 NULL 則返回第二個參數的值。

二、語法

IFNULL(a, b)

如果a不為空,則返回a,如果a為空(就是查找不到的意思),就返回b

三、舉例

創建表

create table student_one( sno varchar(20) not null primary key, sname varchar(20) not null, ssex varchar(20) not null, sbirthday datetime, class varchar(20) )charset=utf8;

加入數據

insert into student_one values('1','陳奇','男','2000-11-02','1'); insert into student_one values('2','陳飛','男','1999-12-05','2'); insert into student_one values('3','周杰','女','1989-03-01','3'); insert into student_one values('4','昆凌','男','1989-04-15','4'); insert into student_one values('5','王麗','女','1999-05-16','5'); insert into student_one values('6','蔡蔡','男','2000-08-17','6');

運行結果

3.1舉例一

第一個參數不為NULL,返回第一個參數,下面的代碼中’hello’不為NULL,就返回的是’hello’

SELECT IFNULL('hello', 'world');

運行結果

3.2舉例二

從student_one表里面查詢sno/sname字段,如果sno字段不為空,就返回sno字段,如果為空就返回sname字段。且取別名為‘字段結果’

SELECT IFNULL(sno,sname) AS '字段結果' FROM student_one

運行結果

從student_one表里面class=4的行查詢sno或者sname字段

SELECT IFNULL(sno,sname) FROM student_one WHERE class=4

運行結果

3.2舉例三

從student_one表里面查詢sno=10的class字段,如果表中沒有class=10的字段,就會返回0

SELECT IFNULL((SELECT class FROM student_one WHERE sno = 10),0);

運行結果

3.4舉例四

從student_one表里面查詢sno等于1的sname字段,如果為空,就從student_one表里面查詢sno等于2的ssex字段

SELECT IFNULL((SELECT sname from student_one WHERE sno=1),(SELECT ssex from student_one WHERE sno=2));

運行結果

從student_one表里面查詢sno等于1的sname字段,如果為空,就從student_one表里面查詢sno等于2的ssex字段。如果前面的都為空,就從student_one表里面查詢sno等于2的sbirthday字段

SELECT IFNULL(IFNULL((SELECT sname from student_one WHERE sno=1),(SELECT ssex from student_one WHERE sno=2)),(SELECT sbirthday from student_one WHERE sno=2));

運行結果

注意事項

1.查詢語句要用括號括起來
2.一個IFNULL只能對應一條判斷語句,
3.IFNULL僅能查詢一個字段,否則會報錯

總結

以上是生活随笔為你收集整理的Mysql中的IFNULL函数的详解(嵌套查询等重点)如果第一个为空就执行第二个的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。