inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[백문이불여일타] 데이터 분석을 위한 고급 SQL

서브쿼리 리트코드 문제풀이

안녕하세요 리트코드 184번 문제 관련하여 질문드립니다.(알리아스 관련)

279

[SQL 실전반 4기] 서홍시

작성한 질문수 1

1

안녕하세요. 리트코드 184번 문제 풀이를 듣기 전 혼자 풀이 할 때는
WHERE 절 다중 컬럼 서브쿼리를 활용하여 문제를 풀었는데요.
 
서브쿼리 사용 전 JOIN 작성 시 테이블 마다 알리아스를 주고,
아래와 같이 쿼리를 짰는데 에러가 나더라구요.
(처음에는 WHERE 절에도 알리아스를 써서 'WHERE절 알리아스 사용 불가능' 때문에 에러뜨나 하다가,
SELECT 절 알리아스까지 모두 바꿔주니 제출이 되던데 혹시 이 쿼리에 문제점이 있을 까요?)
 
아래는 알리아스 모두 제거 후 제출 성공 뜬 쿼리입니다.
 
추가로 이전에 어떤 분이 질문 남겨주셨을 때, WHERE절 다중행 서브쿼리로 푸셔서 제출이 안되셨다고 하셨는데,
저는 다중컬럼 서브퀴리로 풀어서 제출이 된건가요? 해당 쿼리로 풀어도 문제는 없는게 맞는지 궁금합니다.

sql

답변 1

0

송혜정

안녕하세요, 답변 드립니다 :)

1. 알리아스 관련

적어주신 첫번째 쿼리에서 Employee 테이블에 알리아스를 E 라고 적용하지 않은채로 SELECT 절에 사용하여 오류가 발생한 것으로 보입니다. FROM Employee AS E 와 같이 적용하신 후, 첫번째 쿼리와 동일하게 SELECT 절을 적어주시면 오류 없이 동작합니다.

2. 다중컬럼 서브쿼리 관련

https://www.inflearn.com/questions/43204
아마 이 질문과 관련된 내용을 질문 주신 것 같은데요, WHERE Salary IN (SELECT MAX(Salary) FROM  Employee GROUP BY DepartmentId) 와 같이 작성하면, 출력된 MAX(Salary)가 어떤 부서의 값인지 모르기 때문에 오류가 발생합니다. 따라서 DepartmentID도 함께 매칭될 수 있도록 풀이하신 것처럼 다중컬럼 서브쿼리를 이용해야 합니다.

순위 함수 연습 문제 - 스테디셀러 작가 찾기

0

88

1

문제 내용이 잘못된 것 같습니다.

0

59

2

서브쿼리 질문

0

61

2

[수업질문] 서브쿼리 > null데이터 avg사용 주의

0

72

1

서브쿼리는 언제 작성하는건가요?

0

69

1

안녕하세요 질문드립니다.

0

66

2

Top Earners 문제관련 질문

0

96

2

고급반 cheetsheet

0

149

2

196. Delete Duplicate Emails 좋은 코드 질문

0

142

1

a.id = 1과 b.id=1이 없어도 되는 이유

0

127

0

강의 플랫폼

0

199

3

리트코드 177번 function 풀이중 case when 활용을 위한 서브쿼리 구문을 제출 시 검증에 통과되지 않도록 보강된 듯 하네요

0

205

2

ERD 읽는법에 추가 질문 있어요

0

251

1

lead, lag로 풀이할 시 id 값이 존재하지 않는 경우의 오답

0

357

2

사용자정의함수

0

230

1

이 문제 inner join이 이해가 안됩니다.

0

296

1

평균 함수 사용할 때 주의점과 해결법

0

260

1

196. subquery로 풀 때, 궁금한 점

0

384

2

쿼리성능 질문드립니다.

0

315

1

리트코드 highest department salary 문제

0

259

2

The report 문제 order by부분 질문

0

270

2

리트코드 서브쿼리 문제 질문

0

422

1

DEPARTMENT HIGHEST SALARY 서브쿼리 문제 문의

0

236

1

서브쿼리의 활용사례 및 조인관련질문

0

287

1