欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

你知道m(xù)ysql中空值和null值的區(qū)別嗎

 更新時間:2021年01月15日 11:16:14   作者:經(jīng)典雞翅  
這篇文章主要給大家介紹了關(guān)于mysql中空值和null值區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

最近發(fā)現(xiàn)帶的小伙伴寫sql對于空值的判斷方法不正確,導(dǎo)致程序里面的數(shù)據(jù)產(chǎn)生錯誤,在此進行一下整理,方便大家以后正確的判斷空值。以下帶來示例給大家進行講解。

建表

create table test (colA varchar(10) not null,colB varchar(10) null);

向test表中插入數(shù)據(jù)

插入colA為null的數(shù)據(jù)

insert into test values (null,1);

此時會報錯,因為colA列不能為null。

插入colB為null的數(shù)據(jù)

insert into test values (1,null);

發(fā)現(xiàn)插入成功。

插入都為空的數(shù)據(jù)

insert into test values ('','');

插入colA為空的數(shù)據(jù)

insert into test values ('',null);

發(fā)現(xiàn)向colA一列插入空值成功,而colB列既可以插入空值,也可以插入NULL值。
總結(jié)一下,定義為NOT NULL的字段只能插入空值,不能插入null值,而NULL字段可以插入空值,也可以插入null值。

插入都不為空的數(shù)據(jù)

insert into test values (1,2);

開始查詢




可以發(fā)現(xiàn) is not null 只會過濾為null值的列,而<>會同時過濾空值和null值,所以要根據(jù)實際情況選擇過濾方式。
另外,判斷null值只能用 is null 或 is not null ,不能用 = 或 <>。

特別注意

1、在進行count()統(tǒng)計某列的記錄數(shù)的時候,如果采用的NULL值,會別系統(tǒng)自動忽略掉,但是空值是會進行統(tǒng)計到其中的。

2、判斷NULL 用IS NULL 或者 is not null,SQL 語句函數(shù)中可以使用ifnull()函數(shù)來進行處理,判斷空字符用 = 或者 <> 來進行處理

3、對于MySQL特殊的注意事項,對于timestamp數(shù)據(jù)類型,如果往這個數(shù)據(jù)類型插入的列插入NULL值,則出現(xiàn)的值是當(dāng)前系統(tǒng)時間。插入空值,則會出現(xiàn) ‘0000-00-00 00:00:00'

4、對于空值的判斷到底是使用is null 還是 = 要根據(jù)實際業(yè)務(wù)來進行區(qū)分。

5、當(dāng)使用ORDER BY時,首先呈現(xiàn)NULL值。如果你用DESC以降序排序,NULL值最后顯示。當(dāng)使用GROUP BY時,所有的NULL值被認為是相等的,故只顯示一行。

總結(jié)

到此這篇關(guān)于mysql中空值和null值的區(qū)別的文章就介紹到這了,更多相關(guān)mysql空值和null值的區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL視圖和索引專篇精講

    MySQL視圖和索引專篇精講

    這篇文章主要介紹了MySQL的視圖和索引用法與區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-03-03
  • Mysql binlog日志文件過大的解決

    Mysql binlog日志文件過大的解決

    本文主要介紹了Mysql binlog日志文件過大的解決,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • MySQL常用聚合函數(shù)詳解

    MySQL常用聚合函數(shù)詳解

    下面小編就為大家?guī)硪黄狹ySQL常用聚合函數(shù)詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • MySQL 刪除數(shù)據(jù)庫中重復(fù)數(shù)據(jù)方法小結(jié)

    MySQL 刪除數(shù)據(jù)庫中重復(fù)數(shù)據(jù)方法小結(jié)

    在實際項目中,我們經(jīng)常會遇到刪除數(shù)據(jù)庫中重復(fù)數(shù)據(jù)的問題,貌似是很簡單的問題哈,下面我們來探討下
    2014-07-07
  • Mysql刪除重復(fù)數(shù)據(jù)通用SQL的兩種方法

    Mysql刪除重復(fù)數(shù)據(jù)通用SQL的兩種方法

    本文主要介紹了Mysql刪除重復(fù)數(shù)據(jù)通用SQL的兩種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • MySQL?驅(qū)動中虛引用?GC?耗時優(yōu)化與源碼分析

    MySQL?驅(qū)動中虛引用?GC?耗時優(yōu)化與源碼分析

    這篇文章主要為大家介紹了MySQL?驅(qū)動中虛引用?GC?耗時優(yōu)化與源碼分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • MAC下MYSQL5.7.17連接不上的問題及解決辦法

    MAC下MYSQL5.7.17連接不上的問題及解決辦法

    MAC下MYSQL5.7.17無法連接的問題,下載安裝完SQLBench_community 6.3.9后新建MYSQL CONNECTIONS根本連接不上,提示為密碼錯,什么原因如何解決呢?今天小編給大家解答下
    2017-02-02
  • mysql中復(fù)制表結(jié)構(gòu)的方法小結(jié)

    mysql中復(fù)制表結(jié)構(gòu)的方法小結(jié)

    這篇文章主要介紹了mysql中復(fù)制表結(jié)構(gòu)的方法,需要的朋友可以參考下
    2014-07-07
  • mysql之validate_password_policy的使用

    mysql之validate_password_policy的使用

    這篇文章主要介紹了mysql之validate_password_policy的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 深入了解mysql長事務(wù)

    深入了解mysql長事務(wù)

    這篇文章主要介紹了mysql長事務(wù)的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)mysql,感興趣的朋友可以了解下
    2020-08-08

最新評論