我是php的新手,我遇到了一个查询,它从表tree
中取出所有记录,而不计算空记录。这是我的代码:
$query = mysqli_query($con, "SELECT COUNT('left') FROM tree WHERE userid='$eid' AND left not null");
while ($result = mysqli_fetch_array($query)) {
print_r($result);
}
但我得到了这个:
警告:mysqli_fetch_array()要求参数1为mysqli_result,布尔值在
中给出
答案 0 :(得分:0)
您错过了is
运营商。条件应为left IS not null
。
但请注意,您在字符串文字 count
上应用'left'
功能,而不是在left
列上应用null
功能。如果将其应用于列,则可以删除可为空性条件,因为聚合函数会跳过$q = mysqli_query($con,"SELECT COUNT(left) FROM tree WHERE userid='$eid'");
s:
{{1}}
答案 1 :(得分:0)
您的查询错误,您错过了查询中的 IS
mysqli_query($con,"SELECT COUNT(`left`) FROM tree WHERE userid='$eid' AND left not null");
更改为
mysqli_query($con,"SELECT COUNT(`left`) FROM tree WHERE userid='$eid'
AND
left IS not null");
在mysqli_query()之后粘贴下面的代码以查看错误。
if (!$q) {
printf("Error: %s\n", mysqli_error($con));
exit();
}
答案 2 :(得分:0)
您可以使用此代码
$q = mysqli_query($con,"SELECT COUNT(`left`) FROM tree WHERE userid='$eid'
AND
left IS NOT NULL");
if(!q){
while($r = mysqli_fetch_array($q)){
print_r($r);
}
}