0

我认为标题很简单,但基本上我有 2 个保存各种信息的 mysql 表。将它们链接在一起是一个唯一的 ID。

其中一张表显示的总行数比另一张少 2 行。我想遍历这些行并找出缺少哪些 id 值。我对 mysql 的了解还不够,不能说仅使用 mysql 是不可能的,但我认为使用 php 会更容易。

所以像这样的东西真的很糟糕:

if ($stmt = $link->prepare("
    SELECT i.id AS itemsId, c.item_id AS catsId
    FROM items i
    INNER JOIN item_categories c
    WHERE i.id = c.item_id
"))
{
    $stmt->execute();
    $stmt->bind_result($id1, $id2);
    $stmt->close();
}
while ($stmt->fetch())
{
    *run through the numbers and echo which numbers are missing out of 1 to 300.*
}

有人对我如何完成这样的事情有任何想法吗?

任何意见,建议或信息将不胜感激,谢谢!

4

1 回答 1

5
SELECT id FROM items WHERE id NOT IN (SELECT item_id FROM item_categories);
于 2012-12-03T07:04:22.773 回答