보라코딩
장바구니 기능 (merge 사용) / 좋아요 기능 (exists 사용) 본문
<insert id="insertCart" parameterType="map">
MERGE INTO CART
USING DUAL
ON (P_IDX = #{pIdx} AND USER_IDX=#{userIdx})
WHEN MATCHED THEN UPDATE SET QUANT = QUANT + 1
WHEN NOT MATCHED THEN INSERT (CART_IDX, USER_IDX, P_IDX, QUANT)
VALUES (CART_SEQ.NEXTVAL, #{userIdx}, #{pIdx}, 1)
</insert>
MERGE INTO CART
USING DUAL
ON (P_IDX = #{pIdx} AND USER_IDX=#{userIdx})
WHEN MATCHED THEN UPDATE SET QUANT = QUANT + 1
WHEN NOT MATCHED THEN INSERT (CART_IDX, USER_IDX, P_IDX, QUANT)
VALUES (CART_SEQ.NEXTVAL, #{userIdx}, #{pIdx}, 1)
</insert>
<insert id="likeInsert">
INSERT INTO LIKEHATE
SELECT LIKEHATE_SEQ.NEXTVAL
, 0
, #{reviewIdx}
, 0
FROM dual
WHERE NOT EXISTS (SELECT 1
FROM LIKEHATE
WHERE REVIEW_IDX = #{reviewIdx})
</insert>
INSERT INTO LIKEHATE
SELECT LIKEHATE_SEQ.NEXTVAL
, 0
, #{reviewIdx}
, 0
FROM dual
WHERE NOT EXISTS (SELECT 1
FROM LIKEHATE
WHERE REVIEW_IDX = #{reviewIdx})
</insert>
'코딩 > Servlet, JSP, MyBatis' 카테고리의 다른 글
2차 프로젝트 후기 (4/17 ~ 5/4) (1) | 2023.05.08 |
---|---|
조회수 구현 (쿠키 사용) (0) | 2023.05.04 |
별점 기능 구현 (0) | 2023.05.04 |
Day86_230428_장바구니 구현중! (0) | 2023.04.28 |
Day84_230426_ 2차 프로젝트 (0) | 2023.04.26 |