最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySql關(guān)于null的函數(shù)使用分享

 更新時(shí)間:2021年06月16日 14:34:27   作者:東京易冷  
這篇文章主要介紹了MySql中null的函數(shù)使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

MySql中關(guān)于null的函數(shù)

IFNULL

ISNULL

NULLIF

IFNULL

用法:IFNULL(expr1,expr2)

說明:若expr1不是null則返回expr1,否則返回expr2

例子:

sql 結(jié)果
SELECT IFNULL(null,'第一個(gè)參數(shù)是null') ‘第一個(gè)參數(shù)是null'
SELECT IFNULL(‘第一個(gè)參數(shù)不是null','我是第二個(gè)參數(shù)') ‘第一個(gè)參數(shù)不是null'

ISNULL

用法:ISNULL(expr)

說明:若expr是null則返回1,否則返回0

例子:

sql 結(jié)果
SELECT ISNULL(null) 1
SELECT ISNULL(‘不是null的參數(shù)') 0

NULLIF

用法:NULLIF(expr1,expr2)

說明:若expr1等于expr2,則返回null。否則返回exp1。類似CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END。

例子:

sql 結(jié)果
SELECT NULLIF(1,1) null
SELECT NULLIF(1,2) 1

MySql函數(shù)IFNULL使用的注意事項(xiàng)

首先建一張簡(jiǎn)單的表,用于sql語句的操作

建表語句如下:

CREATE TABLE `student` (
`id`  int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵' ,
`name`  varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '名字' ,
`score`  int(4) NOT NULL DEFAULT 0 COMMENT '分?jǐn)?shù)' ,
PRIMARY KEY (`id`)
);

手動(dòng)創(chuàng)建數(shù)據(jù)如下:

現(xiàn)在開始正題:

a. IFNULL的作用是什么?下面一個(gè)簡(jiǎn)單的sql和結(jié)果說明,如果IFNULL(a,b),a接收的值為null,則返回b,否則返回a;

SELECT IFNULL(NULL,0);

b. 以下sql語句,大家可以預(yù)測(cè)下結(jié)果,按照IFNULL函數(shù)的作用,應(yīng)該返回0才對(duì),可是結(jié)果并不是這樣。

SELECT IFNULL(score,0) FROM student WHERE ID = 4;

返回結(jié)果,居然是null,與預(yù)期的結(jié)果0不一致。

c. 以下語句返回正確結(jié)果0;

SELECT IFNULL((SELECT score FROM student WHERE ID = 4),0);

總結(jié):

使用b方式使用IFNULL、SUM函數(shù)等需要確保有查詢記錄,否則也將返回null值,當(dāng)然也可使用c方式避免返回null值,避免程序中出現(xiàn)NPE異常。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mysql分區(qū)表和普通表互轉(zhuǎn)的實(shí)現(xiàn)示例

    Mysql分區(qū)表和普通表互轉(zhuǎn)的實(shí)現(xiàn)示例

    本文主要介紹了Mysql分區(qū)表和普通表互轉(zhuǎn)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02
  • 如何使用MySQL查詢某個(gè)列中相同值的數(shù)量統(tǒng)計(jì)

    如何使用MySQL查詢某個(gè)列中相同值的數(shù)量統(tǒng)計(jì)

    這篇文章的主要內(nèi)容是通過MySQL查詢某個(gè)列中相同值的數(shù)量統(tǒng)計(jì),文章簡(jiǎn)潔明了,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2015-07-07
  • MySQL:Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEM

    MySQL:Unsafe statement written to the binary log using state

    這篇文章主要介紹了MySQL:Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEM,需要的朋友可以參考下
    2016-05-05
  • MySQL連接無法解析HOST主機(jī)名的解決方法

    MySQL連接無法解析HOST主機(jī)名的解決方法

    這篇文章主要介紹了MySQL連接無法解析HOST主機(jī)名的解決方法,需要的朋友可以參考下
    2014-02-02
  • mysql 5.7.21 解壓版安裝配置方法圖文教程

    mysql 5.7.21 解壓版安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了mysql 5.7.21 解壓版安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • MySQL 如何分析查詢性能

    MySQL 如何分析查詢性能

    這篇文章主要介紹了MySQL 如何分析查詢性能,幫助大家更好的理解和學(xué)習(xí)使用MySQL,感興趣的朋友可以了解下
    2021-05-05
  • MySQL編程中的6個(gè)實(shí)用技巧

    MySQL編程中的6個(gè)實(shí)用技巧

    這篇文章主要介紹了MySQL編程中的6個(gè)實(shí)用技巧,本文講解了每一行命令都是用分號(hào)(;)作為結(jié)束、采用關(guān)聯(lián)數(shù)組存取查詢結(jié)果、TEXT、DATE、和SET數(shù)據(jù)類型等內(nèi)容,需要的朋友可以參考下
    2015-02-02
  • 可以改善mysql性能的InnoDB配置參數(shù)

    可以改善mysql性能的InnoDB配置參數(shù)

    MySQL與MSSQL 有一個(gè)區(qū)別在于MySQL建表的時(shí)候需要選擇存儲(chǔ)引擎,常用的存儲(chǔ)引擎有MyISAM和InnoDB
    2011-05-05
  • MySQL 如何修改root用戶的密碼

    MySQL 如何修改root用戶的密碼

    這篇文章主要介紹了MySQL 如何修改root用戶的密碼,幫助大家更好的使用MySQL,不用擔(dān)心忘記密碼,感興趣的朋友可以了解下
    2020-09-09
  • Mysql中基本語句優(yōu)化的十個(gè)原則小結(jié)

    Mysql中基本語句優(yōu)化的十個(gè)原則小結(jié)

    這篇文章主要給大家總結(jié)介紹了Mysql中基本語句優(yōu)化的十個(gè)原則,通過學(xué)習(xí)與記住它們,在構(gòu)造sql時(shí)可以養(yǎng)成良好的習(xí)慣,文中介紹的相對(duì)比較詳細(xì)與簡(jiǎn)單明了,需要的朋友們可以參考借鑒,下面來一起看看吧。
    2017-06-06

最新評(píng)論

高陵县| 宁陵县| 武邑县| 辽宁省| 建德市| 株洲县| 若尔盖县| 伊吾县| 南陵县| 余江县| 乐都县| 长阳| 会泽县| 贺州市| 德江县| 乐至县| 克东县| 林芝县| 永丰县| 静安区| 和顺县| 营山县| 公主岭市| 安顺市| 额尔古纳市| 嘉荫县| 南部县| 建瓯市| SHOW| 垦利县| 台中县| 武冈市| 岳普湖县| 莱州市| 石阡县| 沧源| 阿尔山市| 会同县| 中西区| 织金县| 延长县|