열 기본값 로드
필요한 경우, COPY 명령에서 열 목록을 정의할 수 있습니다. 테이블의 열이 열 목록에서 누락된 경우, COPY는 CREATE TABLE 명령에서 지정된 DEFAULT 옵션이 제공하는 값 또는 DEFAULT 옵션이 지정되지 않은 경우에는 NULL을 사용하여 열을 로드합니다.
NOT NULL로 정의된 열에 COPY가 NULL을 할당하려고 하면 COPY 명령이 실패합니다. DEFAULT 옵션 할당에 대한 자세한 내용은 CREATE TABLE 섹션을 참조하세요.
Amazon S3의 데이터 파일에서 로드하는 경우 열 목록의 열은 데이터 파일의 필드와 동일한 순서여야 합니다. 데이터 파일의 필드에 열 목록의 해당 열이 없는 경우, COPY 명령이 실패합니다.
Amazon DynamoDB 테이블에서 로드할 때는 순서가 중요하지 않습니다. Amazon Redshift 테이블의 열과 일치하지 않는 Amazon DynamoDB 속성의 필드는 삭제됩니다.
COPY 명령을 사용하여 DEFAULT 값을 테이블로 로드할 때는 다음의 제한이 적용됩니다.
-
열 목록에 IDENTITY 열이 포함된 경우, COPY 명령에서 EXPLICIT_IDS 옵션도 지정해야 하며, 그렇지 않을 경우, COPY 명령이 실패합니다. 마찬가지로 열 목록에서 IDENTITY 열이 누락되어 있고 EXPLICIT_IDS 옵션이 지정된 경우, COPY 명령이 실패합니다.
-
일정한 열에 대해 평가된 DEFAULT 표현식은 로드된 모든 행에서 동일하므로 RANDOM() 함수를 사용하는 DEFAULT 표현식은 모든 행에 동일한 값을 할당합니다.
-
CURRENT_DATE 또는 SYSDATE가 포함된 DEFAULT 표현식은 현재 트랜잭션의 타임스탬프로 설정됩니다.
예를 들어 COPY 예의 "기본값을 사용하여 파일에서 데이터 로드"를 참조하십시오.