• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

WHERE 조건 질문드립니다.

22.02.11 14:06 작성 조회수 126

1

강사님께,

 

안녕하세요.

우선 SQL 강의를 초급부터 계속 따라오고 있는데 흥미롭게 잘 듣고 있습니다. 좋은 강의에 감사드립니다.

 

그리고 이번 문제를 풀면서 의문점이 생겨 이렇게 질문 드립니다.

 

제가 처음에 작성한 코드는

 

SELECT DISTINCT L1.num AS ConsecutiveNums

FROM Logs AS L1

    INNER JOIN Logs AS L2 ON L1.id = L2.id-1

    INNER JOIN Logs AS L3 ON L2.id = L3.id-1

WHERE L1.num = L2.num = L3.num

 

이것인데요. Run Code시에는 문제가 없었지만, Submit에선 WrongAnswer이 되었습니다.

 

그런데 강의 내용과 동일하게 WHERE 조건을 설정하여 아래와 같이 작성한 경우에는, Submit에도 통과되었습니다.

 

SELECT DISTINCT L1.num AS ConsecutiveNums

FROM Logs AS L1

    INNER JOIN Logs AS L2 ON L1.id = L2.id-1

    INNER JOIN Logs AS L3 ON L2.id = L3.id-1

WHERE L1.num = L2.num AND L1.num = L3.num

 

제가 느끼기엔 두 가지가 동일한 조건처럼 느껴지는데, 왜 이런 차이가 발생하는지 여쭙고 싶습니다.

그럼 답변을 기다리겠습니다!

감사합니다.

답변 1

답변을 작성해보세요.

0

안녕하세요 positivejmk님, 답변 드립니다.

 

SQL에서 WHERE절에 두 개 이상의 조건을 사용할 때는 AND, OR와 같은 논리 연산자를 사용합니다.
따라서 두 개 이상의 조건을 사용하실 때는 A = B AND B = C 와 같이 작성해주셔야 합니다.

참고하실 수 있는 웹페이지를 첨부합니다 :)

[MySQL Tutorial] WHERE

The search_condition is a combination of one or more expressions using the logical operator ANDOR and NOT.

감사합니다!