728x90
이번 것도 역시 select 쿼리를 사용하는 문제이다
⬆️ 문제 전문 링크
Table: Customer
+-------------+---------+
| Column Name | Type |
+-------------+---------+
| id | int |
| name | varchar |
| referee_id | int |
+-------------+---------+
In SQL, id is the primary key column for this table.
Each row of this table indicates the id of a customer, their name, and the id of the customer who referred them.
Find the names of the customer that are not referred by the customer with id = 2.
Return the result table in any order.
The result format is in the following example.
Example 1:
Input:
Customer table:
+----+------+------------+
| id | name | referee_id |
+----+------+------------+
| 1 | Will | null |
| 2 | Jane | null |
| 3 | Alex | 2 |
| 4 | Bill | null |
| 5 | Zack | 1 |
| 6 | Mark | 2 |
+----+------+------------+
Output:
+------+
| name |
+------+
| Will |
| Jane |
| Bill |
| Zack |
+------+
해당 문제는 Customer 테이블에서 referee_id 가 2가 아닌 name 을 뽑는 문제다.
다만 유의할 점은 referee_id가 null 인 경우에도 추출이 되어야 한다는 점이다.
이를 위해 NVL() 함수를 사용하였다.
NVL(대상 컬럼, null 일 경우 치환할 데이터) 의 함수로서
대상 컬럼이 null 일 경우 특정 값으로 치환해주는 역할을 한다.
풀이는 다음과 같다.
select name
from Customer
where NVL(referee_id, 0) != '2';
728x90
반응형
'알고리즘' 카테고리의 다른 글
[SQL] 1148. Article Views I (Easy) (0) | 2024.12.26 |
---|---|
[SQL] 595. Big Countries (Easy) (0) | 2024.12.26 |
[SQL] 1757. Recyclable and Low Fat Products (Easy) (1) | 2024.12.26 |
[프로그래머스 lv2] H-Index.java (0) | 2022.05.06 |
[프로그래머스 lv3] 네트워크.py (0) | 2022.05.04 |