반응형
블로그 이미지
개발자로서 현장에서 일하면서 새로 접하는 기술들이나 알게된 정보 등을 정리하기 위한 블로그입니다. 운 좋게 미국에서 큰 회사들의 프로젝트에서 컬설턴트로 일하고 있어서 새로운 기술들을 접할 기회가 많이 있습니다. 미국의 IT 프로젝트에서 사용되는 툴들에 대해 많은 분들과 정보를 공유하고 싶습니다.
솔웅

최근에 받은 트랙백

글 보관함

Leetcode - 183. Customers Who Never Order - Easy

2022. 10. 20. 02:46 | Posted by 솔웅


 

이번 문제도 지난번 같이 SQL을 만드는 문제 입니다.

 

Customers와 Orders 테이블이 있고 여기서 한번도 주문을 하지 않은 사람만 골라 내는 문제입니다.

 

 

위의 예제에서 보면 Henry와 Max가 한번도 주문을 하지 않았습니다. 이런 고객만 골라서 display 해 주는 SQL문을 만들면 됩니다.

 

이건 간단하게 아래와 같이 풀 수 있습니다.

 

select customers.name as 'Customers'
from customers
where customers.id not in
(
    select customerid from orders
);

 

Where 문 에서 not in 을 사용하면 됩니다.

 

이밖에 LEFT JOIN 을 사용해서 아래와 같이 할 수 있습니다.

 

select Name as 'Customers'
from Customers c
LEFT JOIN Orders o
ON c.Id = o.CustomerId
where o.CustomerId IS NULL;

 

실행 시간은 둘 다 비슷한 것 같은데 첫번째 방법이 좀 더 안정적인 것 같네요.

 

반응형

Comment