답변 1
0
안녕하세요. 강의자입니다.
WHERE 1=1 은 항상 참입니다. 1은 1과 같으니까요. 이것을 추가한 이유는
SQL 컨벤션이라고 하는 코드를 작성할때 쉽게 이해하기위한 에티켓이라고 생각해주시면 되겠습니다.
컨벤션은 필수적이지는 않으나 잘 지키면 나중에 긴 라인의 SQL 코드를 이해하는데 도움이 많이 됩니다.
예를들어 설명드리면 아래 2개의 SQL에는 1=1 조건 유무만 차이가 있습니다.
1=1이 있는 쿼리의 경우 조건문별로 들여쓰기를 맞춰줄수 있어 이해하기 쉽습니다.
1=1이 없는 쿼리의 경우 조건문의 들여쓰기가 맞지 않습니다.
1=1이 있는 쿼리의 경우 다음라인부터 조건문을 체크하면 됩니다.
1=1이 없는 쿼리의 경우 수천라인의 긴 SQL일 경우 첫번째 조건문을 캐치하지 못하는 경우가 있습니다.
이정도 차이가 있는데요~
짧은 라인의 코드라 와닿지 않으실수도 있을거 같습니다. 혹 이해가 어려우시다면 조건문 앞에 항상 1=1을 넣어주면 나중에 코드를 다시 읽을때 편하다 하지만 필수는 아니다 라고 이해하시고 수업을 들어주시면 되겠습니다.
SELECT * FROM ITEM I, VEN V
WHERE 1 = 1
AND I.VEN_ID = V.VEN_ID
AND I.ITEM_ID = V.ITEM_ID
...(여러조건들)
SELECT * FROM ITEM I, VEN V
WHERE I.VEN_ID = V.VEN_ID
AND I.ITEM_ID = V.ITEM_ID
...(여러조건들)
강의에 관심갖고 질문 주셔서 감사합니다. 추가적인 질문 있으시다면 댓글 남겨주세요.
감사합니다 :)
친절하게 설명해주셔서 감사합니다! :)