SnowConvert AI - Redshift - CREATE TABLE

Gramme de la syntaxe Create Table.

Description

Crée une nouvelle table dans la base de données actuelle. Vous définissez une liste de colonnes qui contiennent chacune des données d’un type distinct. Le propriétaire de la table est l’émetteur de la commande CREATE TABLE.

Pour plus d’informations, veuillez vous référer à la documentation CREATE TABLE.

Syntaxe grammaticale

 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

Description

Permet à Amazon Redshift d’ajuster automatiquement le type d’encodage pour toutes les colonnes de la table afin d’optimiser les performances des requêtes. Dans Snowflake, le concept de BACKUP tel qu’il est utilisé dans d’autres bases de données n’est pas directement applicable. Snowflake gère automatiquement la sauvegarde et la récupération des données grâce à ses fonctions intégrées telles que Time Travel et Fail-safe, éliminant ainsi le besoin d’opérations de sauvegarde manuelles. Pour ces raisons, l’instruction BACKUP est supprimée au cours du processus de transformation

See the Redshift data distribution documentation for this syntax.

Grammar Syntax

 BACKUP { YES | NO }

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER
)
BACKUP YES;
Code de sortie :
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

Description

Dans Amazon Redshift, IF NOT EXISTS est utilisé dans les commandes de création de table pour éviter les erreurs si la table existe déjà. Lorsqu’il est inclus, il garantit que la table n’est créée que si elle n’existe pas déjà, ce qui évite les doublons et les erreurs dans votre script SQL.

See the Redshift CREATE TABLE documentation for this syntax.

Grammar Syntax

 IF NOT EXISTS

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE IF NOT EXISTS table1 (
    col1 INTEGER
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

LOCAL

Description

Dans Amazon Redshift, LOCAL TEMPORARY ou TEMP sont utilisés pour créer des tables temporaires qui n’existent que pour la durée de la session. Ces tables sont propres à chaque session et sont automatiquement supprimées à la fin de la session. Elles sont utiles pour stocker des résultats intermédiaires ou des données de travail sans affecter le schéma permanent de la base de données.

See the Redshift CREATE TABLE documentation for this syntax.

Grammar Syntax

 LOCAL { TEMPORARY | TEMP }

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE LOCAL TEMPORARY TABLE table1 (
    col1 INTEGER
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

DISTKEY

Description

Dans Amazon Redshift, l’instruction DISTKEY est utilisée pour distribuer les données sur les nœuds du cluster afin d’optimiser les performances des requêtes. Snowflake, en revanche, gère automatiquement la distribution et le stockage des données sans avoir besoin de clés de distribution explicites. En raison des différences d’architecture et d’approches de gestion des données, Snowflake n’a pas d’équivalent direct à l’instruction DISTKEY de Redshift.

See the Redshift data distribution documentation for this syntax.

Grammar Syntax

 DISTKEY ( column_name )

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER
)
DISTKEY (col1);
Code de sortie :
Snowflake
 CREATE TABLE table1 (
    col1 INTEGER
)
----** SSC-FDM-RS0001 - DISTKEY OPTION IS NOT SUPPORTED IN SNOWFLAKE. 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 connexes

  1. SSC-FDM-RS0001: Data storage option is not supported in Snowflake. Data distribution is automatically handled by Snowflake.

DISTSTYLE

Description

Mot-clé qui définit le style de distribution des données pour l’ensemble de la table.

See the Redshift data distribution documentation for this syntax.

Grammar Syntax

 DISTSTYLE { AUTO | EVEN | KEY | ALL }

Modèles d’échantillons de sources

Code d’entrée :

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;
Code de sortie :
Snowflake
 CREATE TABLE table1 (
    col1 INTEGER
)
----** SSC-FDM-RS0001 - DISTSTYLE AUTO OPTION IS NOT SUPPORTED IN SNOWFLAKE. 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 IS NOT SUPPORTED IN SNOWFLAKE. 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 IS NOT SUPPORTED IN SNOWFLAKE. 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 IS NOT SUPPORTED IN SNOWFLAKE. 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 connexes

  1. SSC-FDM-RS0001: Data storage option is not supported in Snowflake. Data distribution is automatically handled by Snowflake.

ENCODE

Description

Dans Snowflake, la définition de ENCODE est inutile car il gère automatiquement la compression des données, contrairement à Redshift, qui nécessite des paramètres d’encodage manuels. C’est pourquoi l’instruction ENCODE est supprimée lors de la migration.

See the Redshift CREATE TABLE documentation for this syntax.

Grammar Syntax

 ENCODE AUTO

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER
)
ENCODE AUTO;
Code de sortie :
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 connexes

Il n’y a aucun problème connu.

SORTKEY

Description

Le mot-clé qui spécifie que la colonne est la clé de tri de la table. Dans Snowflake, SORTKEY de Redshift peut être migré vers CLUSTER BY car les deux optimisent le stockage des données pour la performance des requêtes. CLUSTER BY dans Snowflake organise les données sur des colonnes spécifiées, de la même manière que SORTKEY ordonne les données dans Redshift.

See the Redshift data distribution documentation for this syntax.

Grammar Syntax

 [COMPOUND | INTERLEAVED ] SORTKEY ( column_name [,...]) | [ SORTKEY AUTO ]

Modèles d’échantillons de sources

Code d’entrée :

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;
Code de sortie :
Snowflake
 CREATE TABLE table1 (
    col1 INTEGER,
    col2 VARCHAR,
    col3 INTEGER,
    col4 INTEGER
)
--** SSC-FDM-RS0002 - THE PERFORMANCE OF CLUSTER BY IN SNOWFLAKE MAY VARY COMPARED TO THE PERFORMANCE OF SORTKEY IN REDSHIFT. **
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 CLUSTER BY IN SNOWFLAKE MAY VARY COMPARED TO THE PERFORMANCE OF SORTKEY IN REDSHIFT. **
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 IS NOT SUPPORTED IN SNOWFLAKE. 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 connexes

  1. SSC-FDM-RS0001: Data storage option is not supported in Snowflake. Data distribution is automatically handled by Snowflake.

  2. SSC-FDM-RS0002: The performance of CLUSTER BY in Snowflake may vary compared to the performance of SORTKEY in Redshift.

FOREIGN KEY

Description

Contrainte spécifiant une contrainte de clé étrangère, qui exige qu’un groupe d’une ou plusieurs colonnes de la nouvelle table ne contienne que des valeurs correspondant aux valeurs de la ou des colonnes référencées d’une certaine ligne de la table référencée.

See the Redshift CREATE TABLE documentation for this syntax.

Avertissement

La traduction de la clé étrangère sera livrée ultérieurement.

Grammar Syntax

 FOREIGN KEY (column_name [, ... ] ) REFERENCES reftable [ ( refcolumn )

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table15 (
    col1 INTEGER,
    FOREIGN KEY (col1) REFERENCES table_test (col1)
);
Code de sortie :
Snowflake
 CREATE TABLE table15 (
    col1 INTEGER
--                ,
--    --** SSC-FDM-RS0003 - SNOWCONVERT AI TRANSLATION FOR REDSHIFT FOREIGN KEY CONSTRAINTS IS PENDING. **
--    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 connexes

  • SSC-FDM-RSOOO3 : la traduction des clés étrangères sera prise en charge à l’avenir.

PRIMARY KEY

Description

Spécifie qu’une colonne ou un certain nombre de colonnes d’une table ne peut contenir que des valeurs uniques et non nulles

See the Redshift CREATE TABLE documentation for this syntax.

Note

Dans Snowflake, les clés uniques, primaires et étrangères sont utilisées pour la documentation et n’imposent pas de contraintes ou d’unicité. Elles aident à décrire les relations entre les tables, mais n’ont aucune incidence sur l’intégrité des données ou les performances.

Grammar Syntax

 PRIMARY KEY ( column_name [, ... ] )

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER, 
    col2 INTEGER,
    PRIMARY KEY (col1)
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

UNIQUE

Description

Spécifie qu’un groupe d’une ou plusieurs colonnes d’une table ne peut contenir que des valeurs uniques.

See the Redshift CREATE TABLE documentation for this syntax.

Note

Dans Snowflake, les clés uniques, primaires et étrangères sont utilisées pour la documentation et n’imposent pas de contraintes ou d’unicité. Elles aident à décrire les relations entre les tables, mais n’ont aucune incidence sur l’intégrité des données ou les performances.

Grammar Syntax

 UNIQUE ( column_name [, ... ] )

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER, 
    col2 INTEGER,
    UNIQUE ( col1, col2 )
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

NOT NULL | NULL

Description

NOT NULL spécifie que la colonne n’est pas autorisée à contenir des valeurs nulles. NULL, par défaut, spécifie que la colonne accepte les valeurs nulles.

See the Redshift CREATE TABLE documentation for this syntax.

Grammar Syntax

 NOT NULL | NULL

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER NOT NULL, 
    col2 INTEGER NULL
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

REFERENCES

Description

Spécifie une contrainte de clé étrangère, ce qui implique que la colonne ne doit contenir que des valeurs qui correspondent aux valeurs de la colonne référencée d’une certaine ligne de la table référencée

See the Redshift CREATE TABLE documentation for this syntax.

Grammar Syntax

 REFERENCES reftable [ ( refcolumn ) ]

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER REFERENCES table_test (col1)
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

UNIQUE | PRIMARY KEY

Description

Spécifie que la colonne ne peut contenir que des valeurs uniques. Dans Snowflake, UNIQUE et PRIMARY KEY sont utilisées pour documenter et structurer les données, mais elles n’ont pas de fonctionnalité de validation active des données au sens où vous pourriez l’attendre dans d’autres systèmes de base de données qui appliquent ces restrictions au niveau du stockage.

See the Redshift CREATE TABLE documentation for this syntax.

Note

Dans Snowflake, les clés uniques, primaires et étrangères sont utilisées pour la documentation et n’imposent pas de contraintes ou d’unicité. Elles aident à décrire les relations entre les tables, mais n’ont aucune incidence sur l’intégrité des données ou les performances.

Grammar Syntax

 UNIQUE | PRIMARY KEY

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER PRIMARY KEY,
    col2 INTEGER UNIQUE
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

COLLATE

Description

Spécifie si la recherche ou la comparaison de chaînes sur la colonne est CASE_SENSITIVE or CASE_INSENSITIVE.

See the Redshift CREATE TABLE documentation for this syntax.

Note

La langue de classement par défaut est l’anglais. Si votre base de données utilise une autre langue, veuillez mettre à jour le préfixe « en- » pour qu’il corresponde à la langue de votre base de données. Pour plus d’informations, veuillez vous référer à ce lien.

Grammar Syntax

 COLLATE CASE_SENSITIVE | COLLATE CASE_INSENSITIVE

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 TEXT COLLATE CASE_SENSITIVE,
    col2 TEXT COLLATE CASE_INSENSITIVE
);
Code de sortie :
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" }}'
;

Problèmes connus

Il n’y a aucun problème connu.

DEFAULT

Description

Attribue une valeur par défaut aux données de la colonne.

See the Redshift CREATE TABLE DEFAULT clause documentation for this syntax.

Grammar Syntax

 DEFAULT default_expr

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER DEFAULT 1
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

DISTKEY

Description

Dans Amazon Redshift, l’instruction DISTKEY est utilisée pour distribuer les données sur les nœuds du cluster afin d’optimiser les performances des requêtes. Snowflake, en revanche, gère automatiquement la distribution et le stockage des données sans avoir besoin de clés de distribution explicites. En raison des différences d’architecture et d’approches de gestion des données, Snowflake n’a pas d’équivalent direct à l’instruction DISTKEY de Redshift. Pour ces raisons, l’instruction DISTKEY est supprimée au cours du processus de transformation

See the Redshift data distribution documentation for this syntax.

Grammar Syntax

 DISTKEY

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER DISTKEY
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

ENCODE

Description

Le codage de compression pour une colonne. Dans Snowflake, la définition de ENCODE est inutile car il gère automatiquement la compression des données, contrairement à Redshift, qui nécessite des paramètres d’encodage manuels. C’est pourquoi l’instruction ENCODE est supprimée lors de la migration.

See the Redshift CREATE TABLE ENCODE clause documentation for this syntax.

Grammar Syntax

 ENCODE encoding

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER ENCODE DELTA
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

GENERATED BY DEFAULT AS IDENTITY

Description

Spécifie que la colonne est une colonne IDENTITY par défaut et vous permet d’attribuer automatiquement une valeur par défaut à la colonne.

See the Redshift IDENTITY column documentation for this syntax.

Grammar Syntax

 GENERATED BY DEFAULT AS IDENTITY ( seed, step )

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER GENERATED BY DEFAULT AS IDENTITY(1,1)
);
Code de sortie :
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 connexes

Il n’y a pas de problème connu.

IDENTITY

Description

Clause qui spécifie que la colonne est une colonne IDENTITY. (Référence linguistique RedShift SQL Identity).

Grammar Syntax

 IDENTITY ( seed, step )

Modèles d’échantillons de sources

Code d’entrée :

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;
Résultats

DOC

ID1

ID2

ID3

ID4

1

1

5

1

1

2

2

8

3

7

3

3

11

5

13

Code de sortie :
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;
Résultats

DOC

ID1

ID2

ID3

ID4

1

1

5

1

1

2

2

8

3

7

3

3

11

5

13

Problèmes connus

Aucun problème n’a été constaté.

EWIs connexes

Il n’y a pas de problème connu.

SORTKEY

Description

Le mot-clé qui spécifie que la colonne est la clé de tri de la table. Dans Snowflake, SORTKEY de Redshift peut être migré vers CLUSTER BY car les deux optimisent le stockage des données pour la performance des requêtes. CLUSTER BY dans Snowflake organise les données sur des colonnes spécifiées, de la même manière que SORTKEY ordonne les données dans Redshift.

See the Redshift data sorting documentation for this syntax.

Grammar Syntax

 SORTKEY

Modèles d’échantillons de sources

Code d’entrée :

Redshift
 CREATE TABLE table1 (
    col1 INTEGER SORTKEY
);
Code de sortie :
Snowflake
 CREATE TABLE table1 (
    col1 INTEGER
)
--** SSC-FDM-RS0002 - THE PERFORMANCE OF CLUSTER BY IN SNOWFLAKE MAY VARY COMPARED TO THE PERFORMANCE OF SORTKEY IN REDSHIFT. **
CLUSTER BY (col1)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": {  "major": 0,  "minor": 0,  "patch": "0" }, "attributes": {  "component": "redshift",  "convertedOn": "09/17/2024" }}';

Problèmes connus

  1. SSC-FDM-RS0002: The performance of CLUSTER BY in Snowflake may vary compared to the performance of SORTKEY in Redshift.