SnowConvert: CREATE TABLE 用Redshift SQL ステートメント¶
CREATE TABLE¶
説明¶
現在のデータベースに新しいテーブルを作成します。列のリストを定義します。列はそれぞれ異なる型のデータを保持します。テーブルの所有者は、 CREATE TABLE コマンドの発行者です。
詳しくはCREATE TABLE
ドキュメントをご参照ください。
文法構文¶
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 }
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER
)
BACKUP YES;
出力コード:¶
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
サンプルソースパターン¶
入力コード:¶
CREATE TABLE IF NOT EXISTS table1 (
col1 INTEGER
);
出力コード:¶
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 }
サンプルソースパターン¶
入力コード:¶
CREATE LOCAL TEMPORARY TABLE table1 (
col1 INTEGER
);
出力コード:¶
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¶
既知の問題はありません。
テーブルの制約¶
FOREIGN KEY¶
説明¶
外部キー制約を指定する制約。この制約は、新しいテーブルの1つ以上の列のグループが、参照されるテーブルのある行の参照される列の値と一致する値のみを含んでいなければならないことを要求します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
警告
外部キーの変換は今後お届けする予定です。
文法構文¶
FOREIGN KEY (column_name [, ... ] ) REFERENCES reftable [ ( refcolumn )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table15 (
col1 INTEGER,
FOREIGN KEY (col1) REFERENCES table_test (col1)
);
出力コード:¶
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値のみを含むことができることを指定します
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
Snowflakeでは、一意キー、主キー、外部キーはドキュメントに使用され、制約や一意性を強制するものではありません。テーブルの関係を記述するのに役立ちますが、データの統合やパフォーマンスには影響しません。
文法構文¶
PRIMARY KEY ( column_name [, ... ] )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
PRIMARY KEY (col1)
);
出力コード:¶
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つ以上の列のグループが一意な値のみを含むことができることを指定します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
Snowflakeでは、一意キー、主キー、外部キーはドキュメントに使用され、制約や一意性を強制するものではありません。テーブルの関係を記述するのに役立ちますが、データの統合やパフォーマンスには影響しません。
文法構文¶
UNIQUE ( column_name [, ... ] )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
UNIQUE ( col1, col2 )
);
出力コード:¶
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値を受け入れることを指定します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
NOT NULL | NULL
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER NOT NULL,
col2 INTEGER NULL
);
出力コード:¶
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¶
説明¶
外部キー制約を指定します。この制約は、参照されるテーブルのある行の参照される列の値と一致する値のみを列が含まなければならないことを意味します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
REFERENCES reftable [ ( refcolumn ) ]
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER REFERENCES table_test (col1)
);
出力コード:¶
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 の両方がデータの文書化と構造化に使用されますが、ストレージレベルでこれらの制限を強制する他のデータベースシステムで期待されるような、能動的なデータ検証機能はありません。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
Snowflakeでは、一意キー、主キー、外部キーはドキュメントに使用され、制約や一意性を強制するものではありません。テーブルの関係を記述するのに役立ちますが、データの統合やパフォーマンスには影響しません。
文法構文¶
UNIQUE | PRIMARY KEY
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER PRIMARY KEY,
col2 INTEGER UNIQUE
);
出力コード:¶
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 のどちらで行うかを指定します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
デフォルトの照合言語は英語です。データベースが異なる言語を使用している場合は、「en-」プレフィックスをデータベースの言語に合わせて更新してください。詳細はこちらの リンク をご参照ください。
文法構文¶
COLLATE CASE_SENSITIVE | COLLATE CASE_INSENSITIVE
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 TEXT COLLATE CASE_SENSITIVE,
col2 TEXT COLLATE CASE_INSENSITIVE
);
出力コード:¶
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" }}'
;
既知の問題¶
既知の問題はありません。
DEFAULT¶
説明¶
列のデフォルトデータ値を割り当てます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
DEFAULT default_expr
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER DEFAULT 1
);
出力コード:¶
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
は変換処理中に削除されます
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
DISTKEY
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER DISTKEY
);
出力コード:¶
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 ステートメントは移行時に削除されます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
ENCODE encoding
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER ENCODE DELTA
);
出力コード:¶
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 列であることを指定し、列に一意な値を自動的に割り当てることができます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
GENERATED BY DEFAULT AS IDENTITY ( seed, step )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER GENERATED BY DEFAULT AS IDENTITY(1,1)
);
出力コード:¶
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 言語リファレンスアイデンティティ)。
文法構文¶
IDENTITY ( seed, step )
サンプルソースパターン¶
入力コード:¶
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;
DOC |
ID1 |
ID2 |
ID3 |
ID4 |
---|---|---|---|---|
1 |
1 |
5 |
1 |
1 |
2 |
2 |
8 |
3 |
7 |
3 |
3 |
11 |
5 |
13 |
出力コード:¶
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;
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
を CLUSTER BY
に移行することができます。Snowflakeの CLUSTER BY
は、Redshiftの SORTKEY
がデータを順序付けるのと同様に、指定した列でデータを整理します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
SORTKEY
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER SORTKEY
);
出力コード:¶
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のパフォーマンスと比較して異なる場合があります。
Tabla属性¶
DISTKEY¶
説明¶
Amazon Redshiftでは、 DISTKEY
が、クエリのパフォーマンスを最適化するためにクラスタノード間でデータを分散するために使用されます。しかし、Snowflakeは、明示的な分散キーを必要とせずに、データの分散とストレージを自動的に処理します。アーキテクチャとデータ管理アプローチの違いにより、SnowflakeにはRedshiftの DISTKEY
に直接相当するものはありません。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
DISTKEY ( column_name )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER
)
DISTKEY (col1);
出力コード:¶
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¶
説明¶
テーブル全体のデータ配布スタイルを定義するキーワード。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
DISTSTYLE { AUTO | EVEN | KEY | ALL }
サンプルソースパターン¶
入力コード:¶
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;
出力コード:¶
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 ステートメントは移行時に削除されます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
ENCODE AUTO
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER
)
ENCODE AUTO;
出力コード:¶
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¶
既知の問題はありません。
SORTKEY¶
説明¶
列がテーブルのソートキーであることを指定するキーワード。Snowflakeでは、どちらもクエリパフォーマンスのためにデータストレージを最適化するため、Redshiftの SORTKEY
を CLUSTER BY
に移行することができます。Snowflakeの CLUSTER BY
は、Redshiftの SORTKEY
がデータを順序付けるのと同様に、指定した列でデータを整理します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
[COMPOUND | INTERLEAVED ] SORTKEY ( column_name [,...]) | [ SORTKEY AUTO ]
サンプルソースパターン¶
入力コード:¶
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;
出力コード:¶
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のパフォーマンスと比較して異なる場合があります。
CREATE TABLE¶
説明¶
現在のデータベースに新しいテーブルを作成します。列のリストを定義します。列はそれぞれ異なる型のデータを保持します。テーブルの所有者は、 CREATE TABLE コマンドの発行者です。
詳しくはCREATE TABLE
ドキュメントをご参照ください。
文法構文¶
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 }
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER
)
BACKUP YES;
出力コード:¶
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¶
既知の問題はありません。
IF NOT EXISTS¶
説明¶
Amazon Redshiftでは、テーブルが既に存在する場合のエラーを避けるために、テーブル作成コマンドで IF NOT EXISTS
が使用されます。これを含めると、テーブルがまだ存在しない場合にのみテーブルが作成されるようになり、 SQL スクリプトでの重複やエラーを防ぐことができます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
IF NOT EXISTS
サンプルソースパターン¶
入力コード:¶
CREATE TABLE IF NOT EXISTS table1 (
col1 INTEGER
);
出力コード:¶
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 }
サンプルソースパターン¶
入力コード:¶
CREATE LOCAL TEMPORARY TABLE table1 (
col1 INTEGER
);
出力コード:¶
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¶
既知の問題はありません。
テーブルの制約¶
FOREIGN KEY¶
説明¶
外部キー制約を指定する制約。この制約は、新しいテーブルの1つ以上の列のグループが、参照されるテーブルのある行の参照される列の値と一致する値のみを含んでいなければならないことを要求します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
警告
外部キーの変換は今後お届けする予定です。
文法構文¶
FOREIGN KEY (column_name [, ... ] ) REFERENCES reftable [ ( refcolumn )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table15 (
col1 INTEGER,
FOREIGN KEY (col1) REFERENCES table_test (col1)
);
出力コード:¶
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値のみを含むことができることを指定します
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
Snowflakeでは、一意キー、主キー、外部キーはドキュメントに使用され、制約や一意性を強制するものではありません。テーブルの関係を記述するのに役立ちますが、データの統合やパフォーマンスには影響しません。
文法構文¶
PRIMARY KEY ( column_name [, ... ] )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
PRIMARY KEY (col1)
);
出力コード:¶
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つ以上の列のグループが一意な値のみを含むことができることを指定します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
Snowflakeでは、一意キー、主キー、外部キーはドキュメントに使用され、制約や一意性を強制するものではありません。テーブルの関係を記述するのに役立ちますが、データの統合やパフォーマンスには影響しません。
文法構文¶
UNIQUE ( column_name [, ... ] )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER,
col2 INTEGER,
UNIQUE ( col1, col2 )
);
出力コード:¶
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値を受け入れることを指定します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
NOT NULL | NULL
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER NOT NULL,
col2 INTEGER NULL
);
出力コード:¶
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¶
説明¶
外部キー制約を指定します。この制約は、参照されるテーブルのある行の参照される列の値と一致する値のみを列が含まなければならないことを意味します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
REFERENCES reftable [ ( refcolumn ) ]
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER REFERENCES table_test (col1)
);
出力コード:¶
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 の両方がデータの文書化と構造化に使用されますが、ストレージレベルでこれらの制限を強制する他のデータベースシステムで期待されるような、能動的なデータ検証機能はありません。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
Snowflakeでは、一意キー、主キー、外部キーはドキュメントに使用され、制約や一意性を強制するものではありません。テーブルの関係を記述するのに役立ちますが、データの統合やパフォーマンスには影響しません。
文法構文¶
UNIQUE | PRIMARY KEY
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER PRIMARY KEY,
col2 INTEGER UNIQUE
);
出力コード:¶
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 のどちらで行うかを指定します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
注釈
デフォルトの照合言語は英語です。データベースが異なる言語を使用している場合は、「en-」プレフィックスをデータベースの言語に合わせて更新してください。詳細はこちらの リンク をご参照ください。
文法構文¶
COLLATE CASE_SENSITIVE | COLLATE CASE_INSENSITIVE
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 TEXT COLLATE CASE_SENSITIVE,
col2 TEXT COLLATE CASE_INSENSITIVE
);
出力コード:¶
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" }}'
;
既知の問題¶
既知の問題はありません。
DEFAULT¶
説明¶
列のデフォルトデータ値を割り当てます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
DEFAULT default_expr
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER DEFAULT 1
);
出力コード:¶
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
は変換処理中に削除されます
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
DISTKEY
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER DISTKEY
);
出力コード:¶
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 ステートメントは移行時に削除されます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
ENCODE encoding
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER ENCODE DELTA
);
出力コード:¶
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 列であることを指定し、列に一意な値を自動的に割り当てることができます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
GENERATED BY DEFAULT AS IDENTITY ( seed, step )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER GENERATED BY DEFAULT AS IDENTITY(1,1)
);
出力コード:¶
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 言語リファレンスアイデンティティ)。
文法構文¶
IDENTITY ( seed, step )
サンプルソースパターン¶
入力コード:¶
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;
DOC |
ID1 |
ID2 |
ID3 |
ID4 |
---|---|---|---|---|
1 |
1 |
5 |
1 |
1 |
2 |
2 |
8 |
3 |
7 |
3 |
3 |
11 |
5 |
13 |
出力コード:¶
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;
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
を CLUSTER BY
に移行することができます。Snowflakeの CLUSTER BY
は、Redshiftの SORTKEY
がデータを順序付けるのと同様に、指定した列でデータを整理します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
SORTKEY
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER SORTKEY
);
出力コード:¶
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のパフォーマンスと比較して異なる場合があります。
Tabla属性¶
DISTKEY¶
説明¶
Amazon Redshiftでは、 DISTKEY
が、クエリのパフォーマンスを最適化するためにクラスタノード間でデータを分散するために使用されます。しかし、Snowflakeは、明示的な分散キーを必要とせずに、データの分散とストレージを自動的に処理します。アーキテクチャとデータ管理アプローチの違いにより、SnowflakeにはRedshiftの DISTKEY
に直接相当するものはありません。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
DISTKEY ( column_name )
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER
)
DISTKEY (col1);
出力コード:¶
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¶
説明¶
テーブル全体のデータ配布スタイルを定義するキーワード。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
DISTSTYLE { AUTO | EVEN | KEY | ALL }
サンプルソースパターン¶
入力コード:¶
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;
出力コード:¶
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 ステートメントは移行時に削除されます。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここをクリックしてください。
文法構文¶
ENCODE AUTO
サンプルソースパターン¶
入力コード:¶
CREATE TABLE table1 (
col1 INTEGER
)
ENCODE AUTO;
出力コード:¶
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¶
既知の問題はありません。
SORTKEY¶
説明¶
列がテーブルのソートキーであることを指定するキーワード。Snowflakeでは、どちらもクエリパフォーマンスのためにデータストレージを最適化するため、Redshiftの SORTKEY
を CLUSTER BY
に移行することができます。Snowflakeの CLUSTER BY
は、Redshiftの SORTKEY
がデータを順序付けるのと同様に、指定した列でデータを整理します。
この構文に関するAmazon Redshiftのドキュメントページに移動するには、 ここ をクリックしてください。
文法構文¶
[COMPOUND | INTERLEAVED ] SORTKEY ( column_name [,...]) | [ SORTKEY AUTO ]
サンプルソースパターン¶
入力コード:¶
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;
出力コード:¶
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のパフォーマンスと比較して異なる場合があります。