mysql中NULL与 '' 区别
时间:2019-03-22 17:55 来源:linux.it.net.cn 作者:IT
在mysql中“空值” 和 “NULL” 的概念
首先,我们要搞清楚“空值” 和 “NULL” 的概念:
1、空值是不占用空间的
2、mysql中的NULL其实是占用空间的
下面来分析下创建的语句
创建test表
CREATE TABLE `test` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
`colA` varchar(10) DEFAULT '',
`colb` varchar(10) DEFAULT NULL,
PRIMARY KEY (`id`)
)
插入4条数据
insert into test (cola,colb)
values('b','b'),
('c',null),
(null,'d'),
('','e')
查询表数据
select * from test
select * from test where colA !='b'
这样查询是不包含null的
select * from test where ( colA !='b' or colA is null )
注意点:
"null" 表示什么也不是, 用“=、>、< ...” 所有的判断,结果都是false,所有只能用 is null进行判断
(责任编辑:IT)
在mysql中“空值” 和 “NULL” 的概念
首先,我们要搞清楚“空值” 和 “NULL” 的概念:
1、空值是不占用空间的
2、mysql中的NULL其实是占用空间的
下面来分析下创建的语句
创建test表
CREATE TABLE `test` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
`colA` varchar(10) DEFAULT '',
`colb` varchar(10) DEFAULT NULL,
PRIMARY KEY (`id`)
)
插入4条数据
insert into test (cola,colb)
values('b','b'),
('c',null),
(null,'d'),
('','e')
查询表数据
select * from test
select * from test where colA !='b'
这样查询是不包含null的
select * from test where ( colA !='b' or colA is null )
注意点:
"null" 表示什么也不是, 用“=、>、< ...” 所有的判断,结果都是false,所有只能用 is null进行判断
(责任编辑:IT) |