2011-09-16 12 views
1

私は少しこれを説明しましょう。 は、私はこのようなテーブルを持っている想像:同じ列数の列を選択するにはどうすればよいですか?

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つだけですか?

答えて

1

確実COUNT(XID)= 3を有する本

SELECT id, xid, [name] 
FROM MyTable 
WHERE xid IN 
(
    SELECT xid FROM MyTable 
    GROUP BY xid 
    HAVING COUNT(xid) = YourNumber 
) x 
ORDER BY xid; 
+0

を試してみてください? – symcbean

関連する問題