我写了一个查询来检查是否符合某些条件的用户,其中一个是他们有电子邮件地址。

我们的网站将允许用户拥有或没有电子邮件地址。

$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”,但仍然返回用户记录,而他们没有电子邮件地址。

上面的查询有效,但出于好奇,我想知道自己是否以正确的方式进行操作。

最佳答案

空字段可以是空字符串或NULL

要处理这两种情况,请使用:

email > ''

如果表中有很多空的电子邮件记录(两种类型),则可以从range访问中受益。

关于php - 使用MySQL检查空字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2327029/

10-10 12:39