已有40人关注
请教轻鸿老师
发表在PHP图书答疑 2016-09-30
是否精华
版块置顶:
用于过滤记录的where子句为什么有时候能正确过滤记录,有时却不能呢。比如说,有个表名为tb_user,共有696条记录,其中有一个存储身份号码的字段sfzh,允许null值,共有6条记录在该字段为null值。我用where sfzh IS NULL子句过滤时,统计记录数为0,而用where sfzh IS NOT NULL过滤时,统计记录数是690。但另外还有一个表,共有6条记录,在一个叫xm的字段上有两条记录为null值,我用分别用上述两条过滤子句进行统计时,完全正确。这到底是为什么?再次麻烦轻鸿老师指点迷津。
分享到:
精彩评论 3
轻鸿_mrkj
学分:0 LV1
TA的每日心情
加油
2020-12-25 20:06:49
2016-09-30
沙发
读者您好:
您是否能把你的数据库结构截图传上来,或者把创建表的sql语句发过来也可以,便于我们帮您分析问题。
轻鸿_mrkj
学分:0 LV1
TA的每日心情
加油
2020-12-25 20:06:49
2016-09-30
板凳
读者您好:
NULL是一个比较特殊的类型,在MySQL数据库中,在不同的情形下,空值往往代表不同的含义。
因此建议判断空字符串'',用 ='' 或者 <>''。
昌叔_mrkj
学分:14 LV2
TA的每日心情
奋斗
2020-03-29 16:21:53
2016-10-03
地板
谢谢轻鸿老师的解答。我觉得是不是系统性能不稳定所致?我之前也尝试过用空字符串'',但仍然不行,现在按照您的提示,再次尝试,既然可以,而且再次使用IS NULL时,也可以了。我考虑,是不是由于浏览器缓存的原因导致这种现象?我之前把sfzh字段设为NOT NULL,后来才改为NULL的。
首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照