나는 마지막 즉,이 쿼리의 조건 부분을 작성하는 다른 방법이 있는지 알고 싶어 temptab
PostgreSQL의 경기를 여러 값은
INSERT INTO mytab SELECT * FROM temptab
WHERE NOT EXIST (SELECT * FROM mytab WHERE
(mytab .col1= temptab .col1 AND mytab .col2=temptab .col2))
에서 내부 mytab
존재하지 않는 데이터를 삽입하기 위해이 쿼리를 성명서.
위의 쿼리는 절대적으로 잘 작동하지만 더 많은 열을 일치시킬 때 너무 길어집니다. 일부 무엇
mytab.(col1,col2,...,coln)=temptab.(col1,col2,...,coln)
같은 형식의 어떤 종류가 있는지 그래서 나는 생각했다.
감사합니다.
P. : 주저하지 말고 쿼리를 향상 시키십시오.
을 당신이 많은 키 열은 데이터 모델에 문제가 있다는 이럴 의미 있다고합니다. 2 개, 아마 3 개 필드로 구성된 기본 키는 수용 가능하며 3 개 이상은 매우 드뭅니다. BTW : 키 필드의 값은 특정 조합에서만 발생합니까? (어쩌면 우리에게 어떤 데이터를 보여줄 수 있습니까?) – wildplasser
@wildplasser, 최대 4 cols 조합의 테이블을 기본 키로 사용합니다. 데이터 부분에 대해서는 구체적인 조합이 없습니다. – Shirish11
그것은 법이 아니며 단지 경험 법칙입니다. 대부분의 경우 ~ 3 개 필드 이상으로 구성된 키를 갖는 것이 디자인 문제를 나타냅니다. (비표준 데이터 가져 오기/변환시 발생할 수 있지만 다른 문제입니다) – wildplasser