인프런 커뮤니티 질문&답변
order_id, product_id 모든 경우의 수를 자동으로 산출하는 수식은 없을까요?
작성
·
180
0
선생님 좋은 강의 보고 열심히 따라하는 중인데,
1. ord001, product 001 이런 주문번호의 경우의 수를
수강할 때는 일일히 정의해서 temp로 묶을 수 있지만,
실제로는 주문번호가 몇만건이 되고, 제품 SKU도 몇백개 되니까 이걸 일일히 정의할수는 없겠더라구요..
이걸 일일히 temp에 정의하지 않고, 컬럼 단위로 모든 경우의 수가 나오도록 할 방법은 없을까요..?
2. product 1과 2가 join해서 별개의 column으로 형성되는 케이스는 이해했습니다. 그러면 제품 3개를 동시에 장바구니 분석하기 위해서는 한번 더 product_c 케이스로 조인해서 실행하면 되나요?
뒤에 진도를 안나간상태로 여쭙게 되어 혹시 뒤에 있을까봐 걱정되긴 하네요; 좋은 강의 항상 감사드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
답변 1
0
권 철민
지식공유자
안녕하십니까,
1. 질문을 제대로 이해했는지 모르겠습니다만..
temp로 ord001을 설정해서 임시 집합을 만든것은 바로 전 강의의 로직 이해에서 설명 드린 집합을 만들어서 실습하기 위함입니다. 바로 뒤 동영상에서 order_items 집합을 조인해서 일반적인 연관상품 추출 SQL을 설명드립니다.
2. 제품 3개를 동시에 분석한다는 의미를 제가 제대로 이해하지 못했지만, 일단 다음 동영상까지 한번 보시고 다시 질문해 주시면 어떨까 싶습니다.
질문을 정확히 이해한건 아니지만, 제품이 3개가 아니라 10개라도 order_items 를 2개만 조인하면 됩니다. 이유는 동일 order id로 여러개의 연관 상품을 row 레벨로 만들어내기 때문입니다. 뒷 강의에서는 이들 중 하나만 row_number() = 1 로 가져오는데 여러개 가령 2개 이상이라면 row_number() <=2 와 같이 해주시면 됩니다.
감사합니다.





