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

MySQL中空值Null和空字符‘‘的具體使用

 更新時(shí)間:2022年05月25日 15:02:25   作者:桐花思雨  
本文主要介紹了MySQL中空值Null和空字符''的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

1. 空值 Null 和空字符 ''

日常開(kāi)發(fā)中,一般都會(huì)涉及到數(shù)據(jù)庫(kù)增刪改查,那么不可避免會(huì)遇到 MySQL 中的 NULL 和空字符 '',二者表面上看都是空,其實(shí)存在一些差異的

  • 空值 NULL 的長(zhǎng)度是 NULL,不確定占用了多少存儲(chǔ)空間,它是占用存儲(chǔ)空間的
  • 空字符串 '' 的長(zhǎng)度是 0,是不占用空間的*

通俗的講:空字符串 '' 就像是一個(gè)真空狀態(tài)的杯子,什么都沒(méi)有;而空值 NULL 就像是一個(gè)裝滿空氣的杯子,是有東西的。二者雖然看起來(lái)都是空的、透明的,但是有著本質(zhì)的區(qū)別

2. 空值 Null 和空字符 '' 在查詢方式上的對(duì)比

2.1. 創(chuàng)建 SQL 腳本

CREATE TABLE `test_1` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) DEFAULT NULL,
  `password` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4;

--插入數(shù)據(jù)
INSERT INTO test_1 VALUES(1,'李斯','111111');
INSERT INTO test_1 VALUES(2,'','');
INSERT INTO test_1 VALUES(3,null,'');
INSERT INTO test_1 VALUES(4,null,1);

表中的數(shù)據(jù)如下,注意 null 值與 ''

在這里插入圖片描述

2.2. 查詢 username 列為空字符串 '' 的所有數(shù)據(jù)

在這里插入圖片描述

2.3. 查詢 username 列為空值 null 的所有數(shù)據(jù)

2.3.1. 錯(cuò)誤 SQL

在這里插入圖片描述

2.3.2. 正確 SQL

在這里插入圖片描述

2.4. 查詢 username 列不為空值 null 的所有數(shù)據(jù)

2.4.1. 錯(cuò)誤 SQL

在這里插入圖片描述

2.4.2. 正確 SQL

在這里插入圖片描述

  • 比較字符 =,>,< ,<>,!= 都不能用于查詢比較 null 值,如果需要查詢空值 null,必須使用 is nullis not null
  • 空值 '' 可以使用 =, !=, <, > 等算術(shù)運(yùn)算符來(lái)查詢的

3. 空值 Null 和空字符 '' 在 count() 函數(shù)查詢的對(duì)比

3.1. 查詢 username 列數(shù)據(jù)總數(shù)

在這里插入圖片描述

使用 count() 的時(shí)候,空值 null 并不會(huì)被當(dāng)成有效值去統(tǒng)計(jì)的

空字符串 '' 是會(huì)被 count() 函數(shù)所統(tǒng)計(jì)的

4. MySQL 中的比較運(yùn)算符

運(yùn)算符含義
=等于
<=>安全等于,可以比較 null
<> 或 !=不等于
>=大于等于
<=小于等于
>大于
<小于
IS NULL判斷一個(gè)值是否為 null
IS NOT NULL判斷一個(gè)值是否不為 null

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

相關(guān)文章

最新評(píng)論