• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

제코드에 오류가 있었을까요??

20.03.15 19:16 작성 조회수 130

2

select E.Name as Employee

from Employee  as E

inner join Employee as M on E.id = M.id

where  E.salary >  M.salary ;

실행해도 values가  빈리스트로 나오더라구요.

Output
{"headers": ["Employee"], "values": []}
Diff
Expected
{"headers": ["Employee"], "values": [["Joe"]]}

답변 1

답변을 작성해보세요.

0

안녕하세요.

Employee 테이블과 Employee 테이블을 조인하는데(셀프조인) 조인키를 id를 사용하셨네요.

이런 경우 같은 row 들끼리 조인이 되기 때문에 모든 레코드가 E.salary = M.salary 가 되게 됩니다.

정확하게 JOIN이 어떻게 동작하는지 보기 위해, WHERE 절을 제외하고 출력을 한 번 해보시기를 권해드릴게요 :)