国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

Mysql中的NULL和Empty String

2024-07-24 12:50:47
字體:
來源:轉載
供稿:網友

最近新接觸Mysql,昨天新建一個表用于存儲表結構信息:

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_COMMENTfrom information_schema.`COLUMNS` where TABLE_SCHEMA='leo';

然后查詢tablist表:

看看有哪些列沒有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,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對錯新站長站網站的支持!

您可能感興趣的文章:

mysql 中存在null和空時創建唯一索引的方法MySQL Left JOIN時指定NULL列返回特定值詳解淺談SQLServer的ISNULL函數與Mysql的IFNULL函數用法詳解mysql中IFNULL,IF,CASE的區別介紹SQL Server、Oracle和MySQL判斷NULL的方法mysql not in、left join、IS NULL、NOT EXISTS 效率問題記錄
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 商水县| 南丹县| 贺兰县| 淮南市| 亚东县| 海丰县| 宜春市| 三江| 阿城市| 岑溪市| 门源| 怀仁县| 彭山县| 措勤县| 昭觉县| 西畴县| 盖州市| 阜阳市| 青龙| 来宾市| 台东市| 台江县| 青川县| 连云港市| 丹江口市| 苗栗县| 永城市| 陕西省| 曲水县| 夹江县| 合山市| 湖北省| 大英县| 绥宁县| 特克斯县| 浪卡子县| 平遥县| 高清| 德江县| 施秉县| 芒康县|