我在MySQL表中有数据:
+-----+----+-------------+
| id | n1 | n2 |
+-----+----+-------------+
| 1 | A | 1111111111 |
| 2 | A | 2222222222 |
| 3 | B | 1111111111 |
| 4 | C | 1111111111 |
| 5 | C | 4444444444 |
| 6 | C | 3333333333 |
| 7 | B | 2222222222 |
| 8 | B | 3333333333 |
| 9 | D | 2222222222 |
| 10 | D | 4444444444 |
| 11 | D | 1111111111 |
+-----+----+-------------+
需要检查“ n2”中从一组“ n1”到另一组“ n1”中相同的值。如果是这样,请安排它们并计算:
+-----+----+-------------+
| id | n1 | n2 |
+-----+----+-------------+
| 1 | A | 1111111111 |
| 2 | A | 2222222222 |
| 3 | B | 1111111111 |
| 7 | B | 2222222222 |
| 9 | D | 2222222222 |
| 11 | D | 1111111111 |
| 3 | B | 1111111111 |
| 8 | B | 3333333333 |
| 4 | C | 1111111111 |
| 6 | C | 3333333333 |
| 4 | C | 1111111111 |
| 5 | C | 4444444444 |
| 11 | D | 1111111111 |
| 10 | D | 4444444444 |
+-----+----+-------------+
1111111111/2222222222-在“ n1” A,B,D中重复3次
1111111111/3333333333-在“ n1” B,C中2次
1111111111/4444444444-在“ n1” C,D中进行2次
请帮助操作。
答案 0 :(得分:0)
您可能希望将GROUP BY
与HAVING COUNT(n2) > 1
一起使用。
SELECT n1, n2, COUNT(n2) as cnt
FROM table
GROUP BY n2, n1
HAVING COUNT(n2) > 1