편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
4번째 줄: | 4번째 줄: | ||
==문제상황== | ==문제상황== | ||
아래와 같은 테이블에서 A, B, C, … 각각의 개수를 구하고 싶다. | 아래와 같은 테이블에서 A, B, C, … 각각의 개수를 구하고 싶다. | ||
< | <source lang='console'> | ||
mysql> SELECT * FROM jmtable; | mysql> SELECT * FROM jmtable; | ||
+----+-----+ | +----+-----+ | ||
19번째 줄: | 19번째 줄: | ||
+----+-----+ | +----+-----+ | ||
8 rows in set (0.00 sec) | 8 rows in set (0.00 sec) | ||
</ | </source> | ||
==해결방법== | ==해결방법== | ||
{{소스헤더|모든 값의 개수 세기}} | {{소스헤더|모든 값의 개수 세기}} | ||
< | <source lang='mysql'> | ||
SELECT 컬럼명, COUNT(*) FROM 테이블명 GROUP BY 컬럼명; | SELECT 컬럼명, COUNT(*) FROM 테이블명 GROUP BY 컬럼명; | ||
</ | </source> | ||
< | <source lang='console'> | ||
mysql> SELECT str, COUNT(*) FROM jmtable GROUP BY str; | mysql> SELECT str, COUNT(*) FROM jmtable GROUP BY str; | ||
+-----+----------+ | +-----+----------+ | ||
38번째 줄: | 38번째 줄: | ||
+-----+----------+ | +-----+----------+ | ||
5 rows in set (0.00 sec) | 5 rows in set (0.00 sec) | ||
</ | </source> | ||
{{소스헤더|중복(2개 이상)인 건만 세기}} | {{소스헤더|중복(2개 이상)인 건만 세기}} | ||
< | <source lang='mysql'> | ||
SELECT 컬럼명, COUNT(*) FROM 테이블명 GROUP BY 컬럼명 HAVING COUNT(*)>1; | SELECT 컬럼명, COUNT(*) FROM 테이블명 GROUP BY 컬럼명 HAVING COUNT(*)>1; | ||
</ | </source> | ||
< | <source lang='console'> | ||
mysql> SELECT str, COUNT(*) FROM jmtable GROUP BY str HAVING COUNT(*)>1; | mysql> SELECT str, COUNT(*) FROM jmtable GROUP BY str HAVING COUNT(*)>1; | ||
+-----+----------+ | +-----+----------+ | ||
53번째 줄: | 53번째 줄: | ||
+-----+----------+ | +-----+----------+ | ||
2 rows in set (0.00 sec) | 2 rows in set (0.00 sec) | ||
</ | </source> | ||
==같이 보기== | ==같이 보기== | ||
62번째 줄: | 62번째 줄: | ||
[[분류: MySQL]] | [[분류: MySQL]] | ||
[[분류: 중복]] | [[분류: 중복]] | ||