我使用这个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()进行这个查询?如果是这样,那么更好的方法是什么呢?
谢谢。
发布于 2015-03-27 00:53:36
这取决于你想要实现的目标
当记录的数量较少时,num_rows更好,因为它是提取的结果记录的数量。
count(*)是数据库中与查询匹配的记录数。Count(*)比num_rows更有效,因为在num_rows中,您需要从数据库中检索那么多记录,并最终将这些记录传递给PHP语言
"SELECT count(*) FROM image_info WHERE category_id ='".$userId."'";https://stackoverflow.com/questions/29284126
复制相似问题