1

そんなテーブルがあります

| c1 | c2 |
+----+----+
| a  | 2  |
| c  | 1  |
| c  | 2  |
| d  | 3  |
| a  | 2  |
| c  | 2  |
| c  | 4  |
| d  | 2  |

同じc2を持つc1からどの値を選択したいですか。私はこれを試しました

SELECT c2, GROUP_CONCAT(DISTINCT c1)
FROM table
group by c2;

そして私は得た

| c2 | c1   |
+----+------+
| 1  | c    |
| 2  | a,c,d| <==
| 3  | d    |
| 4  | c    |

行 2 として c1 に複数の値を持つ行のみを表示するように選択するにはどうすればよいですか?

4

1 に答える 1

2
SELECT c2, GROUP_CONCAT(DISTINCT c1)
FROM table
group by c2 HAVING count(distinct c1)>1
于 2013-03-14T21:56:29.900 に答える