中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql中NULL和Empty String的區別是什么

發布時間:2021-02-18 16:48:55 來源:億速云 閱讀:228 作者:Leah 欄目:MySQL數據庫

這期內容當中小編將會給大家帶來有關Mysql中NULL和Empty String的區別是什么,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

create table tablist(TABLE_SCHEMA varchar(40),TABLE_NAME varchar(40),COLUMN_NAME varchar(40),COLUMN_TYPE varchar(40),
IS_NULLABLE varchar(10),COLUMN_DEFAULT varchar(40),COLUMN_COMMENT varchar(1000),REMARK varchar(2000));
insert into tablist(TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_TYPE,IS_NULLABLE,COLUMN_DEFAULT,COLUMN_COMMENT)
select TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_TYPE,IS_NULLABLE,COLUMN_DEFAULT,COLUMN_COMMENT
from information_schema.`COLUMNS` where TABLE_SCHEMA='leo';

然后查詢tablist表:

Mysql中NULL和Empty String的區別是什么

看看有哪些列沒有comment于是:

select * from tablist where COLUMN_COMMENT is null;

查到的結果居然是Empty set。不過從以上查詢結果和navicat都能看出:null值在結果集中顯示的是'null'的單詞,而空字符串則顯示為空。

查過資料后發現Mysql的null值和空字符串是有區別的,這里很奇怪COLUMN_COMMENT在經過insert之后,null值居然變成了空字符串(原因未明)。

使用select * from tablist where COLUMN_COMMENT='';查詢正常。

NULL columns require additional space in the row to record whether their values are NULL.For MyISAM tables, each NULL column takes one bit extra, rounded up to the nearest byte.

在Mysql的myisam引擎中,null值占用額外的存儲空間(1bit),空字符串則完全不占用空間。同時null值在B樹索引中也無法被存儲,數據量大時會造成較嚴重的性能問題。

兩者的查詢方式也不一樣:null值查詢使用is null/is not null查詢,而empty string使用=或者!=查詢即可。

上述就是小編為大家分享的Mysql中NULL和Empty String的區別是什么了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

株洲市| 平阳县| 晋江市| 邯郸市| 沐川县| 洛浦县| 南城县| 衡南县| 松溪县| 沁水县| 渭南市| 年辖:市辖区| 梅河口市| 长子县| 揭东县| 信宜市| 于都县| 鄂托克旗| 永宁县| 阳春市| 伊春市| 香格里拉县| 米林县| 尤溪县| 普兰县| 台湾省| 应城市| 丁青县| 东光县| 德州市| 莒南县| 广东省| 仙桃市| 宁远县| 泸州市| 汕尾市| 渝中区| 会同县| 麦盖提县| 宜宾县| 汉阴县|