# [SQL] 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기

> FISH_INFO에서 평균 길이가 33cm 이상인 물고기들을 종류별로 분류하여 잡은 수, 최대 길이, 물고기의 종류를 출력하는 SQL문을 작성해주세요. 결과는 물고기 종류에 대해 오름차순으로 정렬해주시고, 10cm이하의 물고기들은 10cm로 취급하여 평균 길이를 구해주세요.

[https://school.programmers.co.kr/learn/courses/30/lessons/298519](https://school.programmers.co.kr/learn/courses/30/lessons/298519) 

[https://school.programmers.co.kr/learn/courses/30/lessons/298519](https://school.programmers.co.kr/learn/courses/30/lessons/298519)

---

### ◇ 내 답변

```
WITH T AS (SELECT IFNULL(LENGTH, 10) AS N,
                  ID AS TID
           FROM FISH_INFO)

 SELECT COUNT(*) AS FISH_COUNT,
        MAX(N) AS MAX_LENGTH,
        FISH_TYPE
FROM FISH_INFO AS F LEFT JOIN T
ON F.ID = TID
GROUP BY FISH_TYPE
HAVING AVG(N) >= 33
ORDER BY FISH_TYPE ASC;
```

테스트 1번만 틀리는데 영문을 모르겠삼!

For the site tree, see the [root Markdown](https://slashpage.com/%EB%AC%B4%EB%91%A5-rypb2.md).
