Autres instructions en SQL standard

Instruction EXPORT DATA

L'instruction EXPORT DATA exporte les résultats d'une requête vers un emplacement de stockage externe. L'emplacement de stockage doit faire partie de Cloud Storage.

EXPORT DATA
OPTIONS (export_option_list) AS
query_statement

Où :

  • export_option_list spécifie une liste d'options pour l'opération d'exportation, y compris l'URI de destination.

  • query_statement est une requête SQL. Le résultat de cette requête est exporté vers la destination externe.

Utilisez l'option format pour spécifier le format des données exportées. Les limites suivantes s'appliquent :

  • Vous ne pouvez pas exporter des données imbriquées et répétées au format CSV.
  • Si vous exportez des données au format JSON, les types de données INT64 sont encodés sous la forme de chaînes JSON, afin de préserver la précision 64 bits.

export_option_list

La liste d'options spécifie des options pour l'opération d'exportation. Spécifiez la liste d'options au format suivant : NAME=VALUE, ....

Les options uri et format sont obligatoires. L'option uri doit être un URI comportant un seul caractère générique, comme décrit dans la section Exporter des données dans un ou plusieurs fichiers.

Options
compression

STRING

Spécifie un format de compression. Si cette option n'est pas spécifiée, les fichiers exportés ne sont pas compressés. Les valeurs autorisées incluent les suivantes : GZIP, DEFLATE, SNAPPY.

field_delimiter

STRING

Délimiteur utilisé pour séparer les champs. Valeur par défaut : ',' (virgule).

S'applique au format CSV.

format

STRING

Format des données exportées. Les valeurs acceptées sont les suivantes : AVRO, CSV, JSON, PARQUET (Bêta).

header

BOOL

Si le format vaut true, des en-têtes de colonnes sont générés pour la première ligne de chaque fichier de données. Valeur par défaut : false.

S'applique au format CSV.

overwrite

BOOL

Si la valeur vaut true, l'emplacement de destination est écrasé. Sinon, si l'emplacement de destination n'est pas vide, l'instruction renvoie une erreur. Valeur par défaut : false.

uri

STRING

URI de destination pour l'opération d'exportation.

Exemple : "gs://bucket/path/file_*.csv"

Exemples

Exporter des données au format CSV

L'exemple suivant exporte des données vers un fichier CSV. Il comprend des options conduisant à écraser l'emplacement de destination, à écrire des lignes d'en-tête et à utiliser ';' comme délimiteur.

EXPORT DATA OPTIONS(
  uri='gs://bucket/folder/*.csv',
  format='CSV',
  overwrite=true,
  header=true,
  field_delimiter=';') AS
SELECT field1, field2 FROM mydataset.table1 ORDER BY field1 LIMIT 10

Exporter des données au format Avro

L'exemple suivant exporte des données au format Avro avec une compression Snappy.

EXPORT DATA OPTIONS(
  uri='gs://bucket/folder/*',
  format='AVRO',
  compression='SNAPPY') AS
SELECT field1, field2 FROM mydataset.table1 ORDER BY field1 LIMIT 10