如何仅选择具有相同重复列数的行?

时间:2011-09-16 12:48:55

标签: mysql select

让我解释一下。 想象一下,我有一张这样的桌子:

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查询来实现这一目标?

1 个答案:

答案 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;