아래처럼 group by후 조회되는 항목의 count를 알아 내려고 했는데 잘 되지 않았다.
SELECT
COUNT(*) AS CNT
FROM log_ymdh
WHERE 1 = 1
GROUP BY Y, M
+-----+
| CNT |
+-----+
| 100 |
| 84 |
| 63 |
| 60 |
| 61 |
| 57 |
| 110 |
+-----+
7 rows in set (0.00 sec)
원하는 결과 값은 쿼리 결과물 총 행수에 해당하는 7 이어야 한다.
이 경우 group by 이전의 cnt 값이 나왔는데
my-sql에서 서브쿼리가 되지 않아서 group by로는 더이상 이 문제를 해결할 수 없었다.
아래는 distinct를 이용해서 성공한 쿼리문이다.
SELECT
COUNT(DISTINCT Y, M) AS CNT
FROM log_ymdh
WHERE 1 = 1
+-----+
| CNT |
+-----+
| 7 |
+-----+
1 row in set (0.00 sec)