source

고유한 쌍 SQL 덮어쓰기

manysource 2022. 11. 14. 21:48

고유한 쌍 SQL 덮어쓰기

테이블이 있어요news독특한 짝을 가지고 있다(idCategory, ImportantNews).요약하면,news하나의 카테고리가 있고 카테고리별로 하나의 특집 뉴스를 원합니다.문제는 테이블에 쌍이 있어도 새로운 레코드를 삽입하고 싶다는 것입니다.

열에 대한 고유한 인덱스(idCategory, importantNews)가 있으므로 false를 사용하면 중복 키 오류가 발생합니다.인서트/업데이트와 같은 레코드(idCategory, interrantNews)가 존재하는지 여부를 검출하는 트리거 등을 만듭니다.그런 다음 트리거에 의해 실제 레코드가 갱신되고 secondantNews가 null로 설정되며 새 행이 삽입됩니다.

예:

한 줄:

(id,idCategory,importantNews) .> (1,1,TRUE);

다음 쿼리를 실행하면->INSERT INTO news (1,True)

테이블은 이렇게 유지된다

2열

(id,idCategory,importantNews) .> (1,1,NULL)

(id,idCategory,importantNews) .> (2,1,TRUE)

언급URL : https://stackoverflow.com/questions/59859361/overwrite-unique-pair-sql