inflearn logo
강의

Khóa học

Chia sẻ kiến thức

[Một trăm từ đáng giá một ngàn từ] SQL nâng cao để phân tích dữ liệu

Giải bài tập LeetCode về truy vấn con (Subquery)

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

278

jihyepark82444948

1 câu hỏi đã được viết

1

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

sql

Câu trả lời 1

0

sdatarian

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

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

85

1

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

0

58

2

서브쿼리 질문

0

59

2

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

0

72

1

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

0

68

1

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

0

66

2

Top Earners 문제관련 질문

0

96

2

고급반 cheetsheet

0

149

2

196. Delete Duplicate Emails 좋은 코드 질문

0

141

1

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

0

125

0

강의 플랫폼

0

198

3

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

0

205

2

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

0

249

1

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

0

356

2

사용자정의함수

0

230

1

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

0

295

1

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

0

259

1

196. subquery로 풀 때, 궁금한 점

0

382

2

쿼리성능 질문드립니다.

0

313

1

리트코드 highest department salary 문제

0

258

2

The report 문제 order by부분 질문

0

269

2

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

0

420

1

DEPARTMENT HIGHEST SALARY 서브쿼리 문제 문의

0

235

1

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

0

282

1