반응형
레코드가없는 경우 데이터베이스에 삽입하는 문을 작성하고 이미 존재하는 경우 기존 레코드를 업데이트하고 싶습니다.
내 테이블은 다음과 같습니다.
**ID** | Value | UserID | VoteID
1 10 567 54
2 19 600 78
다음을 수행하고 싶습니다 (반 의사로 작성 됨).
IF EXISTS (SELECT ID FROM table WHERE UserID = 600 AND VoteID = 78)
UPDATE table SET Value = 100 WHERE UserID = 600 AND VoteID = 78
ELSE
INSERT INTO table (Value, UserID, VoteID) Values(100, 600, 78)
이 상황에서 'On Duplicate Key'를 어떻게 사용합니까? 감사
해결 방법
INSERT INTO table (Value, UserID, VoteID)
VALUES (100, 600, 78)
ON DUPLICATE KEY UPDATE Value = 100
참조 페이지 https://stackoverflow.com/questions/18643590
반응형
'MySql' 카테고리의 다른 글
MySQL mysql 셸 내에서 테이블 라인없이 쿼리 결과 표시 (비표 형식 출력) (0) | 2020.12.23 |
---|---|
MySQL 최대 값을 기준으로 테이블 결합 (0) | 2020.12.23 |
MySQL Symfony2 Doctrine을 사용하여 기존 데이터베이스에서 엔티티 가져 오기 (0) | 2020.12.23 |
MySQL Doctrine2-한 번에 여러 삽입 (0) | 2020.12.23 |
MySQL mysql : Left Join이 인덱스를 사용하지 않는 이유는 무엇입니까? (0) | 2020.12.23 |
댓글