SnowConvert AI - Redshift - CREATE TABLE¶
Create Table Syntax Grammar.
설명¶
현재 데이터베이스에 새 테이블을 생성합니다. 각각 고유한 데이터 타입의 데이터를 보관하는 열 목록을 정의합니다. 테이블의 소유자는 CREATE TABLE 명령의 발급자입니다.
자세한 내용은 CREATE TABLE
설명서를 참조하십시오.
Grammar Syntax ¶
CREATE [ [LOCAL ] { TEMPORARY | TEMP } ] TABLE
[ IF NOT EXISTS ] table_name
( { column_name data_type [column_attributes] [ column_constraints ]
| table_constraints
| LIKE parent_table [ { INCLUDING | EXCLUDING } DEFAULTS ] }
[, ... ] )
[ BACKUP { YES | NO } ]
[table_attributes]
where column_attributes are:
[ DEFAULT default_expr ]
[ IDENTITY ( seed, step ) ]
[ GENERATED BY DEFAULT AS IDENTITY ( seed, step ) ]
[ ENCODE encoding ]
[ DISTKEY ]
[ SORTKEY ]
[ COLLATE CASE_SENSITIVE | COLLATE CASE_INSENSITIVE ]
and column_constraints are:
[ { NOT NULL | NULL } ]
[ { UNIQUE | PRIMARY KEY } ]
[ REFERENCES reftable [ ( refcolumn ) ] ]
and table_constraints are:
[ UNIQUE ( column_name [, ... ] ) ]
[ PRIMARY KEY ( column_name [, ... ] ) ]
[ FOREIGN KEY (column_name [, ... ] ) REFERENCES reftable [ ( refcolumn ) ]
and table_attributes are:
[ DISTSTYLE { AUTO | EVEN | KEY | ALL } ]
[ DISTKEY ( column_name ) ]
[ [COMPOUND | INTERLEAVED ] SORTKEY ( column_name [,...]) | [ SORTKEY AUTO ] ]
[ ENCODE AUTO ]
BACKUP¶
설명¶
Amazon Redshift가 테이블의 모든 열에 대한 인코딩 유형을 자동으로 조정하여 쿼리 성능을 최적화할 수 있도록 합니다. Snowflake에서는 다른 데이터베이스에서 볼 수 있는 BACKUP
개념이 직접 적용되지 않습니다. Snowflake는 Time Travel 및 Fail-safe와 같은 기본 제공 기능을 통해 데이터 백업 및 복구를 자동으로 처리하므로 수동 백업 작업이 필요하지 않습니다. 이러한 이유로 변환 프로세스 중에 BACKUP
문이 제거됩니다
여기 를 클릭하여 이 구문에 대한 Amazon Redshift 문서 페이지로 이동합니다.
문법 구문¶
BACKUP { YES | NO }
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER
)
BACKUP YES;
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
IF NOT EXISTS¶
설명¶
Amazon Redshift에서는 테이블이 이미 존재하는 경우 오류를 방지하기 위해 테이블 생성 명령에 IF NOT EXISTS
를 사용합니다. 포함하면 테이블이 아직 존재하지 않는 경우에만 테이블이 생성되도록 하여 SQL 스크립트의 중복 및 오류를 방지합니다.
여기를 클릭하여 이 구문에 대한 Amazon Redshift 문서 페이지로 이동합니다.
문법 구문¶
IF NOT EXISTS
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE IF NOT EXISTS table1 (
col1 INTEGER
);
출력 코드:¶
Snowflake¶
CREATE TABLE IF NOT EXISTS table1 (
col1 INTEGER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}';
관련 EWIs¶
알려진 문제는 없습니다.
LOCAL¶
설명¶
Amazon Redshift에서 LOCAL TEMPORARY
또는 TEMP
은 세션 기간 동안만 존재하는 임시 테이블을 만드는 데 사용됩니다. 이러한 테이블은 세션별로 다르며 세션이 종료되면 자동으로 삭제됩니다. 영구 데이터베이스 스키마에 영향을 주지 않고 중간 결과 또는 작업 데이터를 저장하는 데 유용합니다.
여기를 클릭하여 이 구문에 대한 Amazon Redshift 문서 페이지로 이동합니다.
문법 구문¶
LOCAL { TEMPORARY | TEMP }
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE LOCAL TEMPORARY TABLE table1 (
col1 INTEGER
);
출력 코드:¶
Snowflake¶
CREATE LOCAL TEMPORARY TABLE table1 (
col1 INTEGER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}';
관련 EWIs¶
알려진 문제는 없습니다.
DISTKEY¶
설명¶
Amazon Redshift에서는 DISTKEY
를 사용하여 클러스터 노드 간에 데이터를 분산하여 쿼리 성능을 최적화합니다. 하지만 Snowflake는 명시적 배포 키 없이도 데이터 배포와 저장소를 자동으로 처리합니다. 아키텍처와 데이터 관리 접근법의 차이로 인해, Snowflake는 Redshift의 DISTKEY
와 직접적으로 동등한 기능을 가지고 있지 않습니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
DISTKEY ( column_name )
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER
)
DISTKEY (col1);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER
)
----** SSC-FDM-RS0001 - DISTKEY OPTION NOT SUPPORTED. DATA STORAGE IS AUTOMATICALLY HANDLED BY SNOWFLAKE. **
--DISTKEY (col1)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "03/03/2025", "domain": "test" }}';
관련 EWIs¶
SSC-FDM-RS0001: 지원되지 않는 옵션입니다. 데이터 저장소는 Snowflake에서 자동으로 처리합니다.
DISTSTYLE¶
설명¶
전체 테이블의 데이터 배포 스타일을 정의하는 키워드입니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
DISTSTYLE { AUTO | EVEN | KEY | ALL }
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER
)
DISTSTYLE AUTO;
CREATE TABLE table2 (
col1 INTEGER
)
DISTSTYLE EVEN;
CREATE TABLE table3 (
col1 INTEGER
)
DISTSTYLE KEY
DISTKEY (col1);
CREATE TABLE table4 (
col1 INTEGER
)
DISTSTYLE ALL;
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER
)
----** SSC-FDM-RS0001 - DISTSTYLE AUTO OPTION NOT SUPPORTED. DATA STORAGE IS AUTOMATICALLY HANDLED BY SNOWFLAKE. **
--DISTSTYLE AUTO
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}';
CREATE TABLE table2 (
col1 INTEGER
)
----** SSC-FDM-RS0001 - DISTSTYLE EVEN OPTION NOT SUPPORTED. DATA STORAGE IS AUTOMATICALLY HANDLED BY SNOWFLAKE. **
--DISTSTYLE EVEN
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}';
CREATE TABLE table3 (
col1 INTEGER
)
----** SSC-FDM-RS0001 - DISTSTYLE KEY OPTION NOT SUPPORTED. DATA STORAGE IS AUTOMATICALLY HANDLED BY SNOWFLAKE. **
--DISTSTYLE KEY
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
CREATE TABLE table4 (
col1 INTEGER
)
----** SSC-FDM-RS0001 - DISTSTYLE ALL OPTION NOT SUPPORTED. DATA STORAGE IS AUTOMATICALLY HANDLED BY SNOWFLAKE. **
--DISTSTYLE ALL
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}';
관련 EWIs¶
SSC-FDM-RS0001: 지원되지 않는 옵션입니다. 데이터 저장소는 Snowflake에서 자동으로 처리합니다.
ENCODE¶
설명¶
Snowflake에서는 수동 인코딩 설정이 필요한 Redshift와 달리 데이터 압축을 자동으로 처리하므로 ENCODE
를 정의할 필요가 없습니다. 따라서 마이그레이션 중에는 ENCODE 문이 제거됩니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
ENCODE AUTO
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER
)
ENCODE AUTO;
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
There are no known issues.
SORTKEY¶
설명¶
열이 테이블의 정렬 키임을 지정하는 키워드입니다. 둘 다 쿼리 성능을 위해 데이터 저장소를 최적화하기 때문에 Snowflake에서 Redshift의 SORTKEY
를 CLUSTERBY
로 마이그레이션할 수 있습니다. CLUSTERBY
는 Redshift의 SORTKEY
에서 데이터를 주문하는 방식과 유사하게 지정된 열에 대해 데이터를 조직화합니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
[COMPOUND | INTERLEAVED ] SORTKEY ( column_name [,...]) | [ SORTKEY AUTO ]
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER,
col2 VARCHAR,
col3 INTEGER,
col4 INTEGER
)
COMPOUND SORTKEY (col1, col3);
CREATE TABLE table2 (
col1 INTEGER
)
INTERLEAVED SORTKEY (col1);
CREATE TABLE table3 (
col1 INTEGER
)
SORTKEY AUTO;
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER,
col2 VARCHAR,
col3 INTEGER,
col4 INTEGER
)
--** SSC-FDM-RS0002 - THE PERFORMANCE OF THE CLUSTER BY MAY VARY COMPARED TO THE PERFORMANCE OF SORTKEY **
CLUSTER BY (col1, col3)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
CREATE TABLE table2 (
col1 INTEGER
)
--** SSC-FDM-RS0002 - THE PERFORMANCE OF THE CLUSTER BY MAY VARY COMPARED TO THE PERFORMANCE OF SORTKEY **
CLUSTER BY (col1)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
CREATE TABLE table3 (
col1 INTEGER
)
----** SSC-FDM-RS0001 - SORTKEY AUTO OPTION NOT SUPPORTED. DATA STORAGE IS AUTOMATICALLY HANDLED BY SNOWFLAKE. **
--SORTKEY AUTO
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}';
관련 EWIs¶
SSC-FDM-RS0001: 지원되지 않는 옵션입니다. 데이터 저장소는 Snowflake에서 자동으로 처리합니다.
SSC-FDM-RS0002: CLUSTER BY 의 성능은 Sortkey의 성능과 다를 수 있습니다.
FOREIGN KEY¶
설명¶
새 테이블의 1개 이상의 열 그룹에 참조된 열 또는 참조된 테이블의 일부 행의 열에 있는 값과 일치하는 값만 포함해야 하는 외래 키 제약 조건을 지정하는 제약 조건입니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
경고
외래 키에 대한 변환은 향후 제공될 예정입니다.
문법 구문¶
FOREIGN KEY (column_name [, ... ] ) REFERENCES reftable [ ( refcolumn )
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table15 (
col1 INTEGER,
FOREIGN KEY (col1) REFERENCES table_test (col1)
);
출력 코드:¶
Snowflake¶
CREATE TABLE table15 (
col1 INTEGER
-- ,
-- --** SSC-FDM-RS0003 - THE TRANSLATION FOR FOREIGN KEY IS NOT AVAILABLE, IT WILL BE PROVIDED IN THE FUTURE. **
-- FOREIGN KEY (col1) REFERENCES table_test (col1)
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/26/2024" }}';
관련 EWIs¶
SSC-FDM-RSOOO3: 향후 외래 키 변환이 지원될 예정입니다.
PRIMARY KEY¶
설명¶
테이블의 열 또는 여러 열에 null이 아닌 고유 값만 포함할 수 있도록 지정합니다
Click here to navigate to the Amazon Redshift docs page for this syntax.
참고
Snowflake에서는 고유, 기본 및 외래 키가 설명서에 사용되며 제약 조건이나 고유성을 적용하지 않습니다. 테이블 관계를 설명하는 데 도움이 되지만 데이터 무결성이나 성능에는 영향을 미치지 않습니다.
문법 구문¶
PRIMARY KEY ( column_name [, ... ] )
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
PRIMARY KEY (col1)
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
PRIMARY KEY (col1)
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
UNIQUE¶
설명¶
테이블의 1개 이상의 열 그룹에 고유한 값만 포함할 수 있도록 지정합니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
참고
Snowflake에서는 고유, 기본 및 외래 키가 설명서에 사용되며 제약 조건이나 고유성을 적용하지 않습니다. 테이블 관계를 설명하는 데 도움이 되지만 데이터 무결성이나 성능에는 영향을 미치지 않습니다.
문법 구문¶
UNIQUE ( column_name [, ... ] )
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
UNIQUE ( col1, col2 )
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
UNIQUE ( col1, col2 )
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
NOT NULL | NULL¶
설명¶
NOT NULL 은 열에 null 값을 포함할 수 없도록 지정합니다. NULL 을 기본값으로 설정하면 열이 null 값을 허용하도록 지정됩니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
NOT NULL | NULL
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER NOT NULL,
col2 INTEGER NULL
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER NOT NULL,
col2 INTEGER NULL
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
REFERENCES¶
설명¶
참조된 테이블의 일부 행의 참조된 열에 있는 값과 일치하는 값만 열에 포함해야 한다는 의미의 외래 키 제약 조건을 지정합니다
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
REFERENCES reftable [ ( refcolumn ) ]
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER REFERENCES table_test (col1)
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER REFERENCES table_test (col1)
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
UNIQUE | PRIMARY KEY¶
설명¶
열에 고유 값만 포함할 수 있도록 지정합니다. Snowflake에서 UNIQUE 및 PRIMARY KEY 는 모두 데이터를 설명하고 구조화하는 데 사용되지만, 저장소 수준에서 이러한 제한을 적용하는 다른 데이터베이스 시스템에서 기대할 수 있는 의미에서 적극적인 데이터 유효성 검사 기능은 없습니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
참고
Snowflake에서는 고유, 기본 및 외래 키가 설명서에 사용되며 제약 조건이나 고유성을 적용하지 않습니다. 테이블 관계를 설명하는 데 도움이 되지만 데이터 무결성이나 성능에는 영향을 미치지 않습니다.
문법 구문¶
UNIQUE | PRIMARY KEY
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER PRIMARY KEY,
col2 INTEGER UNIQUE
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER PRIMARY KEY,
col2 INTEGER UNIQUE
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
COLLATE¶
설명¶
열의 문자열 검색 또는 비교가 CASE_SENSITIVE 또는 CASE_INSENSITIVE 인지 여부를 지정합니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
참고
기본 데이터 정렬 언어는 영어입니다. 데이터베이스에서 다른 언어를 사용하는 경우 데이터베이스의 언어와 일치하도록’en-‘접두사를 업데이트하십시오. 자세한 내용은 이 링크 를 참조하십시오.
문법 구문¶
COLLATE CASE_SENSITIVE | COLLATE CASE_INSENSITIVE
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 TEXT COLLATE CASE_SENSITIVE,
col2 TEXT COLLATE CASE_INSENSITIVE
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 TEXT COLLATE 'en-cs',
col2 TEXT COLLATE 'en-ci'
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
알려진 문제¶
There are no known issues.
DEFAULT¶
설명¶
열의 기본 데이터 값을 할당합니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
DEFAULT default_expr
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER DEFAULT 1
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER DEFAULT 1
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
DISTKEY¶
설명¶
Amazon Redshift에서는 DISTKEY
를 사용하여 클러스터 노드 간에 데이터를 분산하여 쿼리 성능을 최적화합니다. 하지만 Snowflake는 명시적 배포 키 없이도 데이터 배포와 저장소를 자동으로 처리합니다. 아키텍처와 데이터 관리 접근법의 차이로 인해, Snowflake는 Redshift의 DISTKEY
와 직접적으로 동등한 기능을 가지고 있지 않습니다. 이러한 이유로 변환 프로세스 중에 DISTKEY
문이 제거됩니다
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
DISTKEY
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER DISTKEY
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
ENCODE¶
설명¶
열의 압축 인코딩입니다. Snowflake에서는 수동 인코딩 설정이 필요한 Redshift와 달리 데이터 압축을 자동으로 처리하므로 ENCODE
를 정의할 필요가 없습니다. 따라서 마이그레이션 중에는 ENCODE 문이 제거됩니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
ENCODE encoding
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER ENCODE DELTA
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
GENERATED BY DEFAULT AS IDENTITY¶
설명¶
열을 기본값 IDENTITY 열로 지정하고 열에 고유 값을 자동으로 할당할 수 있도록 합니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
GENERATED BY DEFAULT AS IDENTITY ( seed, step )
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER GENERATED BY DEFAULT AS IDENTITY(1,1)
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER IDENTITY(1,1) ORDER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}'
;
관련 EWIs¶
알려진 문제는 없습니다.
IDENTITY¶
설명¶
열이 IDENTITY 열임을 지정하는 절입니다. (RedShift SQL Language Reference ID).
문법 구문¶
IDENTITY ( seed, step )
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
doc INTEGER,
id1 INTEGER IDENTITY(1,1),
id2 INTEGER DEFAULT "identity"(674435, 0, ('5,3'::character varying)::text),
id3 INTEGER DEFAULT default_identity(963861, 1, '1,2'::text),
id4 INTEGER DEFAULT "default_identity"(963861, 1, '1,6'::text)
);
INSERT INTO table1 (doc) VALUES (1),(2),(3);
SELECT * FROM table1;
Results¶
DOC |
ID1 |
ID2 |
ID3 |
ID4 |
---|---|---|---|---|
1 |
1 |
5 |
1 |
1 |
2 |
2 |
8 |
3 |
7 |
3 |
3 |
11 |
5 |
13 |
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
doc INTEGER,
id1 INTEGER IDENTITY(1,1) ORDER,
id2 INTEGER IDENTITY(5,3) ORDER,
id3 INTEGER IDENTITY(1,2) ORDER,
id4 INTEGER IDENTITY(1,6) ORDER
)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "12/04/2024", "domain": "test" }}';
INSERT INTO table1 (doc) VALUES (1),(2),(3);
SELECT * FROM
table1;
Results¶
DOC |
ID1 |
ID2 |
ID3 |
ID4 |
---|---|---|---|---|
1 |
1 |
5 |
1 |
1 |
2 |
2 |
8 |
3 |
7 |
3 |
3 |
11 |
5 |
13 |
알려진 문제 ¶
문제가 발견되지 않았습니다.
관련 EWIs¶
알려진 문제는 없습니다.
SORTKEY¶
설명¶
열이 테이블의 정렬 키임을 지정하는 키워드입니다. 둘 다 쿼리 성능을 위해 데이터 저장소를 최적화하기 때문에 Snowflake에서 Redshift의 SORTKEY
를 CLUSTERBY
로 마이그레이션할 수 있습니다. CLUSTERBY
는 Redshift의 SORTKEY
에서 데이터를 주문하는 방식과 유사하게 지정된 열에 대해 데이터를 조직화합니다.
Click here to navigate to the Amazon Redshift docs page for this syntax.
문법 구문¶
SORTKEY
샘플 소스 패턴¶
입력 코드:¶
Redshift¶
CREATE TABLE table1 (
col1 INTEGER SORTKEY
);
출력 코드:¶
Snowflake¶
CREATE TABLE table1 (
col1 INTEGER
)
--** SSC-FDM-RS0002 - THE PERFORMANCE OF THE CLUSTER BY MAY VARY COMPARED TO THE PERFORMANCE OF SORTKEY **
CLUSTER BY (col1)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "redshift", "convertedOn": "09/17/2024" }}';
알려진 문제¶
SSC-FDM-RS0002: CLUSTER BY 의 성능은 Sortkey 또는 Distkey의 성능과 다를 수 있습니다.