728x90
MariaDB
-- 해당 데이터가 존재할 경우 새로운 로우를 삽입하지 않는다.
INSERT IGNORE INTO [TABLE NAME](COLUMN1, COLUMN2, ...) VALUES(VAL1, VAL2, ...);
-- 해당 데이터가 존재할 경우 해당 로우를 업데이트 한다.
INSERT INTO [TABLE NAME](COLUMN1, COLUMN2, ...) VALUES(VAL1, VAL2, ...)
ON DUPLICATE KEY UPDATE
COL1 = VAL1,
COL2 = VAL2, ...
Oracle
INSERT INTO [TABLE NAME](COLUMN1, COLUMN2, ...) VALUES(VAL1, VAL2, ...)
WHERE NOT EXISTS(SELECT * FROM [TABLE NAME] WHERE COL1 = VAL1, COL2 = VAL2, ...);
-- [주의] WHERE condition에는 해당 데이터임을 구분할 수 있는 key가 조건으로 들어간다.
반응형
'Database' 카테고리의 다른 글
SQL) WITH절을 이용해 가독성 높이기 (0) | 2024.08.15 |
---|---|
데이터 유무 확인시 COUNT 대신 EXISTS 사용하기 (0) | 2023.05.11 |
오라클(Oracle) 포트 변경 (0) | 2021.05.04 |