MySQL中的空值,null检索的问题

来源:互联网 发布:免费刷金币软件 编辑:程序博客网 时间:2024/06/05 10:55

检索空值:

SELECT * FROM `test` WHERE col1 = ''

检索NULL值:

SELECT * FROM `test` WHERE col1 IS NULL

检索NOT NULL值:

SELECT * FROM `test` WHERE col1 IS NOT NULL

注意:''不是null,所以not null会把''都算进去

检索非空值:

SELECT * FROM `test` WHERE col2<>''

注意:<>'',会同时排除''和null的数据,只检索有内容的数据


1、不为空
Select   *   From   table Where id<>''
Select   *   From   table Where id!=''

2、为空
Select   *   From   table Where id=''
Select   *   From   table Where   ISNULL(id)


总结:
1. null的存储不是'',是其它特殊的字符表示。
2. null在检索<>''的时候,也会被排除,因为没有真正有意义的内容
3. not null严格按照字面意思,''不会被排除。
4. 定义not null的字段,可以插入''



原创粉丝点击