让我尝试重新解释我正在尝试做的事情。首先,我有一个庞大的数据库或项目,50k 甚至更多,每天都在增长。我需要根据它没有的信息从这个数据库中提取信息。(我使用的是 SQL;pSQL 或 MySql 无关紧要。)
所以数据库看起来像这样(大致)
SELECT * FROM my_table
+---------+--------+ | 项目 | 类型 | +---------+--------+ | 12EU | 磷 | | 12EU | 右 | | 12EU | T | | 34RE | 磷 | | 34RE | 右 | | 34RE | T | | 54TR | 右 | | 54TR | T | +---------+--------+
并非所有项目都有“P”,但它们都有“T”和“R”。我需要拉出没有TYPE“P”的ITEM,其他字母的ITEM对我来说无关紧要。
在这个例子中,我想要项目“54TR”,因为它没有类型“P”。
我希望这有助于更好地解释我正在尝试做的事情。
我所做的示例:
SELECT distinct ITEM
FROM (SELECT distinct ITEM FROM my_table WHERE TYPE='P') q
WHERE TYPE!='P'
AND ITEM != q.ITEM
ORDER BY ITEM
这不起作用,它仍然返回其他类型,而不是正确的轨道......