问题描述
我写了一个查询来检查符合特定条件的用户,其中一个是他们有电子邮件地址.
I've wrote a query to check for users with certain criteria, one being they have an email address.
我们的网站将允许用户拥有或不拥有电子邮件地址.
Our site will allow a user to have or not have an email address.
$aUsers=$this->readToArray('
SELECT `userID`
FROM `users`
WHERE `userID`
IN(SELECT `userID`
FROM `users_indvSettings`
WHERE `indvSettingID`=5 AND `optionID`='.$time.')
AND `email`!=""
');
这是在 SQL 中检查空字段的最佳方法吗?我刚刚尝试了IS NOT NULL",这仍然返回了一个用户记录,而他们没有电子邮件地址.
Is this the best way to check for an empty field in SQL? I've just tried "IS NOT NULL" and this still returned a users record without them having an email address.
上面的查询有效,但出于好奇,我想知道我是否以正确的方式进行操作.
The query above works but out of curiosity I wondered if I'm doing it the correct way.
推荐答案
空字段可以是空字符串或 NULL.
An empty field can be either an empty string or a NULL.
要同时处理这两种情况,请使用:
To handle both, use:
email > ''
如果您的表格中有大量空电子邮件记录(两种类型),则可以从 range 访问中受益.
which can benefit from the range access if you have lots of empty email record (both types) in your table.
这篇关于使用 MySQL 检查空字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!



大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)