inflearn logo
강의

講義

知識共有

実務ですぐに使える!Eコマースデータで学ぶ実践SQL分析

Join(2) - 複数テーブルのjoin

쿼리 질문

解決済みの質問

268

Hyemin Yang

投稿した質問数 1

1

데이터 join 시점부터 두 번 째줄 쿼리 문인

WHERE l = l 은 왜 넣는건가요? 무슨 의미인가요?

sql

回答 1

0

longvacation

안녕하세요. 강의자입니다.

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 
...(여러조건들) 

 

강의에 관심갖고 질문 주셔서 감사합니다. 추가적인 질문 있으시다면 댓글 남겨주세요.

감사합니다 :)

1

Hyemin Yang

친절하게 설명해주셔서 감사합니다! :)

노션 링크도 안 열리고, 알려준 vercel도 실행이 안됩니다.

0

11

1

코드를 첨부해야하는 이유가 있나요?

0

20

2

간단한 오타 제보입니다.

0

19

1

큰 범위 조회 시 EXPLAIN의 rows 값이 정확하지 않은 이유가 궁금합니다.

0

35

2

실제 FK제약조건을 설정하지 않는이유

0

35

2

Free Edition 실습 영상은 아직 업데이트전인가요?

0

22

1

상품 정보 크롤링

0

29

2

강의에 적용한 스크립트를 받아 볼수 있을까요?

0

40

2

실습소실행안되요

0

39

1

다음 연관 강의는 어디서 볼 수 있나요?

0

79

2

쿠팡 크롤링 코드 지금은 사용 불가능한가요?

0

83

1

섹션3 join(1) 데이터 연관관계 설정 자료 요청

0

109

1

결제 데이터 분석 (join)편에 올라온 수업 자료 실행이 안됩니다

0

204

2

할인 데이터 확인 편에서 에러가 자꾸 납니다.

0

198

1

할인테이블 생성의 엑셀 자료가 없어요

0

210

1

SQL 라이트가 ORDER를 인식하지 못합니다

0

296

3

여기서 WHERE 1=1을 왜 쓰는 걸까요?

0

915

2

수업자료로 아이템테이블의 카테고리아이디컬럼 복붙하신거 추가해주세요 ㅠㅠ

1

381

2

수업 자료 문의

0

238

1

구글 콜랩 링크 부탁드립니다

0

304

1

sql파일 불러오기가 안됩니다.

0

741

1

csv 불러왔을때 string으로 인식해서 숫자함수 안먹히는 문제

1

1245

2

맥 OS 사용 부분과 상품명 오류 부분 질문 드립니다 ㅠ

1

305

1

쿠팡 상품 정보 크롤링 상품 테이블 엑셀파일

1

369

1