我有一个表 links1,其中包含列标题 CardID 和 AbilityID,如下所示:
CardID | AbilityID
1001 | 1
1001 | 2
1001 | 3
1002 | 2
1002 | 3
1002 | 4
1003 | 3
1003 | 4
1003 | 5
我想要的是能够返回所有具有两个特定 AbilityID 的 CardID。
例如:
If I choose 1 and 2, it returns 1001.
If I choose 3 and 4, it returns 1002 and 1003.
是否可以仅使用一个表来执行此操作,还是我需要创建一个相同的表并对这些表执行 INNER JOIN?
最佳答案
尝试自行加入:
SELECT t1.CardID
FROM links1 AS t1
JOIN links1 AS t2
ON t1.CardID = t2.CardID
WHERE t1.AbilityID = 1 AND t2.AbilityID = 2;
See this SQLFiddle
关于mysql - 仅选择具有不同值组合的条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13319257/