채택완료

영카트 동일 상품을 두분류로 저장하는 방법?

2022-03-28 (월) 17:31:53 2,062

현재 API에서 상품데이터를 가져오고 있고, 이를 직접 SQL로 넣어주는 프로그램을 작성한 상태입니다. 아시다시피, 상품 고유값은 중복되면 안되는 데이터지요.

현재 분류가 이런씩으로 나눌 생각입니다.

33308116_1648450655.1957.png

여성복, 남성복이 있고, 여성복이나 남성복 데이터중에서 비디오 URL 데이터가있는(추가폼) 상품들만 따로 또 분류해서 비디오 상품 분류로 나눠주고싶은데 이렇게될 경우에는 상품 고유값이 중복되니 분류하기가 애매해지더군요.

지금 생각한 방법으로는

1. API에서 데이터를 가져올때, 비디오 정보가 있는 상품이면 일반상품으로 한번, 비디오 분류로 한번 총 두번 INSERT를 해준다

- 이경우 발생하는 문제가 상품의 고유값중복, INSERT를 두번해야하는 자원낭비? 비디오 정보 유무차이로만으로 데이터가 두배가 되는거니..? 정도인데

뭔가 다른 방법이 없을까해서 여쭤봅니다. 현재 설정해둔것은 상품 아이템 테이블에 videoURL 컬럼을 하나 추가해준 상황이구요.

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트
2022-03-28 (월) 17:51:59

처음부터 두번 insert가 아닌 구분할 필드들을 추가해서 한번저장 시 추가된 필드에 구분값을 넣으시고,

메뉴에서 구분 쿼리로 나뉘시는건 어떠신지요.

답변에 대한 댓글 1개

아이디어 감사드립니다 :)
옵션 부분처럼 A|B 이런씩으로 구분값을 넣으시라는 말씀이시죠?
2022-03-28 (월) 18:48:20

https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html

INSERT ... ON DUPLICATE KEY UPDATE Statement

를 사용하면 되지 않을까요?

답변에 대한 댓글 1개

답변 감사드립니다 :) DUPLICATE KEY 도 가능한가보군요?
한번 연구해봐야겠습니다. SQL 쿼리문도 기본만 알고 있으니 참 응용으로는 못나아가겠네요 ㅠㅠ

답변을 작성하려면 로그인이 필요합니다.