Следующая UNLOAD:
UNLOAD ('SELECT "Field1" from "XX"."XX" where "Field1" = \'String\';')
TO 'XXX'
IAM_ROLE 'XXX'
DELIMITER AS ','
ADDQUOTES
ESCAPE
NULL AS ''
MANIFEST
вызывает ошибку:
java.sql.SQLException: [Amazon](500310) Invalid operation: unterminated quoted string at or near "'SELECT "Field1" from "XX"."XX" where "Field1" = \'String\'";
Кажется, что это сочетание экранированных одинарных кавычек и точки с запятой.Поскольку это работает:
UNLOAD ('SELECT "Field1" from "XX"."XX" where "Field1" = \'String\'')
TO 'XXX'
IAM_ROLE 'XXX'
DELIMITER AS ','
ADDQUOTES
ESCAPE
NULL AS ''
MANIFEST
, и это работает:
UNLOAD ('SELECT "Field1" from "XX"."XX" where "Field1" = "Field2";')
TO 'XXX'
IAM_ROLE 'XXX'
DELIMITER AS ','
ADDQUOTES
ESCAPE
NULL AS ''
MANIFEST
Мне было интересно, видел ли кто-нибудь что-нибудь об этом.Не нашли ответ через https://docs.aws.amazon.com/redshift/latest/dg/r_UNLOAD.html