我正在使用这个mysql select查询来检查数据库中给定类别存在多少图像。我想为一个类别保留最多5张图片。
$q = "SELECT image_id FROM image_info
WHERE category_id = 1 AND member_id = $userId";
$r = $mysqli->query($q) or trigger_error($mysqli->error." [$q]");
if($r->num_rows <= 4) {
echo 'good';
// my stuff
} else {
echo 'bad';
}
这对我有用。但我想知道有没有办法使用mysql
COUNT()
进行此查询?如果是这样,那么更好的方法是什么。
谢谢。
答案 0 :(得分:0)
这取决于你想要达到的目标
当记录数量少于获取的结果记录数时, num_rows
会更好。
count(*)
是与查询匹配的数据库中的记录数。 Count(*)比num_rows更有效,就像在num_rows中从数据库中检索那么多记录并最终将这些记录传递给PHP
"SELECT count(*) FROM image_info WHERE category_id ='".$userId."'";