728x90

문제
- MyNumbers 테이블에서 한 번만 등장하는 숫자 중 가장 큰 숫자 찾기
- 만약 한 번만 등장하는 숫자가 없으면 null로 표시하기
테이블
MyNumbers | num |
8 | |
8 | |
3 | |
3 | |
1 | |
4 | |
5 | |
6 |
- 한 번만 등장하는 숫자 : 1, 4, 5, 6
- 이 중에 가장 큰 숫자 : 6
풀이과정
▶ WHERE절 IN함수 내 서브쿼리 활용
# 한 번만 등장하는 숫자 구하기
- WHERE 조건절에 IN() 함수 및 서브쿼리 활용
- num 별로 그룹화했을 때 COUNT 값이 1인 경우만 추출
# 그 중 가장 큰 숫자 구하기
-
- WHERE 조건절로 만들어진 (한 번만 등장하는 숫자로만 이루어진) 테이블에서 MAX인 값 조회하기
# 정답
1
2
3
|
SELECT MAX(num) num
FROM MyNumbers
WHERE num IN(SELECT num FROM MyNumbers GROUP BY num HAVING COUNT(num)=1)
|
cs |
다른 사람 풀이 참고
▶ FROM절 서브쿼리 활용
# 한 번만 등장하는 숫자 테이블 만들기
- FROM절에 서브쿼리로 (한 번만 등장하는 숫자로 이루어진) 테이블 만들기
- num 별로 그룹화했을 때 COUNT 값이 1인 경우만 추출
# 그 중 가장 큰 숫자 구하기
-
- FROM절 테이블에서 MAX인 값 조회하기
# 정답
1
2
3
4
5
6
7
|
SELECT MAX(num) AS num
FROM (
SELECT num
FROM MyNumbers
GROUP BY num
HAVING COUNT(num) = 1
) AS unique_numbers;
|
cs |
728x90
'데이터분석 과정 > SQL' 카테고리의 다른 글
MySQL 리트코드 | Game Play Analysis IV (DATE_ADD 함수, DATE_SUB 함수) (0) | 2025.04.02 |
---|---|
MySQL 리트코드 | Immediate Food Delivery Ⅱ (WHERE절 서브쿼리 활용) (0) | 2025.04.01 |
MySQL 리트코드 | Monthly Transactions I (DATE_FORMAT 함수_날짜 형식 지정) (0) | 2025.03.31 |
MySQL 리트코드 | Not Boring Movies (%, MOD함수) (0) | 2025.03.28 |
MySQL 리트코드 | Confirmation Rate (AVG 함수 내 조건문 사용법) (0) | 2025.03.27 |
댓글