让我解释一下。 想象一下,我有一张这样的桌子:
id | xid | name
---------------
1 | 29 | hi
2 | 29 | this
3 | 38 | an
4 | 87 | example
5 | 87 | for
6 | 29 | stackoverflow
我想只选择共有3个xid的行,所以在这个例子中它将是:
id | xid | name
----------------
1 | 29 | hi
2 | 29 | this
6 | 29 | stackoverflow
如何只使用一个MySQL查询来实现这一目标?
答案 0 :(得分:1)
试试这个
SELECT id, xid, [name]
FROM MyTable
WHERE xid IN
(
SELECT xid FROM MyTable
GROUP BY xid
HAVING COUNT(xid) = YourNumber
) x
ORDER BY xid;