Как использовать встроенный формат файла для запроса данных со сцены в хранилище данных Snowflake - PullRequest
0 голосов
/ 03 августа 2020

Есть ли способ запросить данные из этапа со встроенным форматом файла без копирования данных в таблицу ?

При использовании таблицы COPY INTO оператор, я могу указать встроенный формат файла:

COPY INTO <table>
FROM (
  SELECT ...
  FROM @my_stage/some_file.csv
)
FILE_FORMAT = (
  TYPE = CSV,
  ...
);

Однако то же самое не работает при запуске того же запроса выбора напрямую, за пределами команды COPY INTO:

SELECT ...
FROM @my_stage/some_file.csv
(FILE_FORMAT => (
  TYPE = CSV,
  ...
));

Вместо этого лучшее, что я могу сделать, - это использовать уже существующий формат файла:

SELECT ...
FROM @my_stage/some_file.csv
(FILE_FORMAT => 'my_file_format');

Но это не позволяет мне программно изменять формат файла при создании запроса. Я пробовал все возможные варианты синтаксиса, но, похоже, сейчас это не поддерживается.

1 Ответ

2 голосов
/ 03 августа 2020

Я не верю, что это возможно, но в качестве обходного пути нельзя создать формат файла программно, использовать этот именованный формат файла в вашем SQL, а затем, если необходимо, отбросить его?

...