Bootstrap

MySQL数据库中null、''、' '三者的区别比较

前言:
今天,一个群里在讨论关于字段为空时候的问题。顿时,兴趣盎然,研究了一番!

1.创建测试表

 create table test(id int(2),num varchar(2));

说明:id字段是为了更好的看出被筛选的行,类似于行号作用;num字段之所以为varchar类型是因为int插值不能为’‘或’ ',于是创建了这样的一张表。

2.插入测试值

insert into test (id,num) values (1,'我');
insert into test (id,num) values (2,'在');
insert into test (id,num) values (3,'测');
insert into test (id,num) values (4,'试');
insert into test (id) values (5);  					/* null 空值 */
insert into test (id,num) values (6,'看');
insert into test (id,num) values (7,'结');
insert into test (id,num) values (8,'果');
insert into test (id,num) values (9,''); 			/* '' 空字符 */
insert into test (id,num) values (10,' '); 			/* ' ' 空格 */

3.查询测试值

select * from test;

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;