Я загружаю данные из Amazon S3 в таблицу в Amazon Redshift. Таблица содержит различные столбцы, в которых некоторые данные столбцов могут содержать специальные символы.
У команды копирования есть опция Delimiter
, где мы можем указать разделитель при извлечении данных в таблицу.
Вопрос 2-х кратный -
Когда я экспортирую (unload command)
в S3 с использованием разделителя, скажем ,
, он работает нормально, но когда я пытаюсь импортировать в Redshift из S3, возникает проблема, потому что некоторые столбцы содержат оператор ',', который команда копирования неверно интерпретирует как разделитель и выбрасывает ошибка.
Я пробовал различные разделители, но данные в моей таблице, похоже, содержат тот или иной специальный символ, который вызывает указанную выше проблему.
Я даже пробовал выгрузку с использованием нескольких разделителей - например, #%
или ~,
, но при загрузке из s3 с помощью команды копирования - двойной разделитель не поддерживается.
Какие-нибудь решения?
Я думаю, что разделитель можно экранировать с помощью \
, но по какой-то причине он тоже не работает, или, возможно, я не использую правильный синтаксис для экранирования в команде копирования.