我想知道是否可以转换下面的代码,以便它只需要 1 个查询而不是分配更多查询? items 表中填满了超过 10k 个项目,而下面的方法只需要这么长时间,是否有更快的方法来显示未分类的项目?
$CD1=mysql_query("select * FROM items");
while($C1=mysql_fetch_array($CD1)){
$sql=mysql_query("select * from category where sub='$C1[sub]'");
if(mysql_num_rows($sql) == 0)
echo "$C1[id]->$C1[sub]<br>";
}
最佳答案
您应该使用外连接和where子句来过滤没有类别的项目
SELECT i.* FROM items i LEFT OUTER JOIN category c ON i.sub = c.id WHERE c.id IS NULL
关于php - 仅显示 1 个 mysql 查询中未分类的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11807447/