0

这是一个非常简单的问题。我一定只是在做一些愚蠢的事情:

此查询回显出一个行 ID 号:

$query = "SELECT * FROM userpage WHERE uploaderrating = $rating";
        $result = mysql_query($query);
        $row1= mysql_fetch_array($result);
            echo $row1[id];

当我添加一个附加条件时(即使在 SQL 数据库中肯定满足条件,回显确实会产生任何东西(即变量为空)。失败的代码是:

$query = "SELECT * FROM userpage WHERE uploaderrating = $rating and reviewer = NULL";
        $result = mysql_query($query);
        $row1= mysql_fetch_array($result);
            echo $row1[id];
4

3 回答 3

6

你不能使用

reviewer = NULL

你需要使用

reviewer IS NULL

NULL 是一个未定义的值,所以它不等于任何东西;所以你需要使用 IS 来寻找它。

于 2012-06-18T17:51:25.053 回答
1

你应该使用

 $query = "SELECT * FROM userpage WHERE uploaderrating = $rating and reviewer IS NULL";
    $result = mysql_query($query);
    $row1= mysql_fetch_array($result);
        echo $row1[id];

我希望它有效。

于 2012-06-18T17:52:28.477 回答
0

据我所知,空值是用 IS 验证的

  • ... 其中 xxx 为空
  • ... 其中 xxx 不为空
于 2012-06-18T17:51:10.653 回答