대리점이 있고 가맹점이 있는데요
기본적으로 가맹점의 상품정보는 대리점의 상품명, 가격 등 상품정보를 모두 따라가게 되어있습니다.
하지만 가맹점에서 가격을 다르게도 할 수 있게끔 DB를 구성해야 합니다.
기본 테이블 Product 이 있고
가맹점제품 테이블 Product_Agency 에는
Product 테이블의 키
가맹점키
상품가격
이렇게 구성을 하면 되지 않을까 생각했는데
웹사이트에서 상품정보를 뿌려주는 부분에서
해당 가맹점제품 테이블에 없는 상품의 경우에는 기본테이블의 가격을 뿌려주고
해당 가맹점제품 테이블에 해당 상품정보가 있을경우에만 해당 가맹점제품에서 설정해준 가격을 뿌려줘야 하느데요
일반 join 으로는 이게 안되는 것 같아서요
상품목록을 뿌려줄때 어떻게 쿼리를 잡아야 하는지 궁금합니다.
아니면 DB 구성을 다르게 잡아야 할지?
기본테이블의 모든 상품마다 가맹점 별로 모두 테이블안에 정보를 넣어버릴 까도 생각해봤는데
그렇게 되면 가맹점이 많아질수록 정보관리하기도 힘들 것 같아서요
조언 부탁 드립니다.
left outer join으로 조인한 후에
값이 있으면 그 값을 뿌려주고
없으면 기본 테이블 가격을 뿌려주면 될것 같습니다.
isnull(가맹점 상품 가격, 기본 테이블 가격)