< 클라이언트가 필요한 데이터 >
클라이언트가 보내는 데이터: CART_ID
CART_INFO 에서
TOTAL_PRICE
QUANTITY
CART_DETAIL_INFO 에서
SMALL_OPT_NAME
SMALL_OPT_PRICE
+
MENU_NAME (CART_ID로 CART_INFO에서 MENU_ID를 찾고 MENU_ID로 MENU_INFO에 가서 MENU_NAME을 가져옴)
ST_NAME (MENU_INFO 에서 ST_ID를 찾아서 ST_ID로 ST_INFO 테이블에 가서 ST_NAME 가져옴)
<쿼리>
SELECT
ci.CART_ID,
ci.TOTAL_PRICE,
ci.QUANTITY,
ci.MENU_ID,
mi.MENU_NAME,
mi.ST_ID,
si.ST_NAME,
cdi.SMALL_OPT_NAME,
cdi.SMALL_OPT_PRICE
FROM
CART_INFO ci
JOIN
MENU_INFO mi ON ci.MENU_ID = mi.MENU_ID
JOIN
ST_INFO si ON mi.ST_ID = si.ST_ID
LEFT JOIN
CART_DETAIL_INFO cdi ON ci.CART_ID = cdi.CART_ID
WHERE
ci.CART_ID = 7;
< 필요값 > ---------------------------------------------------------------------------------------------------------------------------------------------
CART_ID | 장바구니 고유번호 | CART_INFO, CART_DETAIL_INFO |
MENU_ID | 메뉴 고유번호 | CART_INFO, MENU_INFO |
MENU_NAME | 메뉴명 | MENU_INFO |
ST_ID | 가게 고유번호 | MENU_INFO, ST_INFO |
ST_NAME | 가게명 | ST_INFO |
TOTAL_PRICE | 장바구니 총 금액 | CART_INFO |
QUANTITY | 장바구니 담은 메뉴 총수량 | CART_INFO |
SMALL_OPT_NAME | 옵션명 (예: 치즈 추가) | CART_DETAIL_INFO |
SMALL_OPT_PRICE | 옵션 가격 | CART_DETAIL_INFO |
BIG_OPT_NAME | (필요시) 큰 옵션명 | CART_DETAIL_INFO |
BIG_OPT_ID | (필요시) 큰 옵션ID | CART_DETAIL_INFO |
SMALL_OPT_ID | (필요시) 작은 옵션ID | CART_DETAIL_INFO |