1

我有一个表格,其中包含正在审核的列表,另一个表格记录了已审核的列表以及审核日期

我试图弄清楚是否有可能形成一个 mysql 查询,它允许我只输出尚未审查的列表(即审查表中没有该列表的条目)。

所以在下面的例子中。我想查询列表以查找尚未审核的任何内容。在这种情况下,它只会返回第一个列表 (id#1),因为其他两个列表已经过审核。这是否应该通过 MySQL 连接来完成?

Listings Table:

id|title
1|First Listing
2|Second Listing
3|Third Listing
etc.

Reviewed Table:

id|listing_id|review_date
1|2|2013_02_05
2|3|2013_02_05
4

1 回答 1

0

你可以像这样使用LEFT JOINNULL

SELECT L.*
FROM Listings L
  LEFT JOIN Reviewed R ON L.Id = R.Listing_Id
WHERE R.Id IS NULL

或者您可以使用NOT IN

SELECT L.*
FROM Listings L
WHERE ID NOT IN (SELECT Listing_ID FROM Reviewed)

这是SQL Fiddle

祝你好运。

于 2013-02-05T00:11:12.690 回答