校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識(shí)庫 > 你知道m(xù)ysql中空值和null值的區(qū)別嗎

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

熱門標(biāo)簽:曲靖移動(dòng)外呼系統(tǒng)公司 武漢網(wǎng)絡(luò)外呼系統(tǒng)服務(wù)商 地圖標(biāo)注費(fèi)用是多少 啥是企業(yè)400電話辦理 百應(yīng)電話機(jī)器人優(yōu)勢(shì) 電話外呼系統(tǒng)改號(hào) 外呼系統(tǒng)打電話上限是多少 南昌三維地圖標(biāo)注 怎樣在地圖標(biāo)注銷售區(qū)域

前言

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

此時(shí)會(huì)報(bào)錯(cuò),因?yàn)閏olA列不能為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 只會(huì)過濾為null值的列,而>會(huì)同時(shí)過濾空值和null值,所以要根據(jù)實(shí)際情況選擇過濾方式。
另外,判斷null值只能用 is null 或 is not null ,不能用 = 或 >。

特別注意

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

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

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

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

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

總結(jié)

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

您可能感興趣的文章:
  • 解決mysql使用not in 包含null值的問題
  • MySQL Innodb 存儲(chǔ)結(jié)構(gòu) 和 存儲(chǔ)Null值 用法詳解
  • mysql字符串拼接并設(shè)置null值的實(shí)例方法
  • Mysql實(shí)現(xiàn)null值排在最前/最后的方法示例
  • MySQL中對(duì)于NULL值的理解和使用教程
  • 詳解MySQL中的NULL值
  • mysql中將null值轉(zhuǎn)換為0的語句
  • MySQL中關(guān)于null值的一個(gè)小問題

標(biāo)簽:隨州 錦州 滄州 荊州 黑河 甘南 資陽 吉林

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《你知道m(xù)ysql中空值和null值的區(qū)別嗎》,本文關(guān)鍵詞  你,知道,mysql,中空,值,和,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《你知道m(xù)ysql中空值和null值的區(qū)別嗎》相關(guān)的同類信息!
  • 本頁收集關(guān)于你知道m(xù)ysql中空值和null值的區(qū)別嗎的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 乃东县| 安陆市| 新郑市| 玛沁县| 五原县| 江口县| 乐昌市| 方城县| 阳信县| 吉林市| 通辽市| 斗六市| 洪雅县| 安阳县| 花垣县| 鸡泽县| 巴中市| 大石桥市| 云龙县| 大姚县| 新津县| 通州区| 乐东| 喀喇| 丹江口市| 江门市| 上思县| 阳西县| 泾源县| 江门市| 土默特左旗| 哈巴河县| 仙桃市| 遂川县| 前郭尔| 嵊泗县| 广安市| 股票| 彰武县| 滁州市| 重庆市|