1
Ich versuche, die Ergebnisse aus einer Rotverschiebung Abfrage in einem Bucket-Ordner, der das Datum von gestern ist, zu entladen.Redshift Entladen in S3 Location, das ist eine verkettete Zeichenfolge
So im folgenden Beispiel sollen die Daten in s3 sein: // mybucket/Reporting/20170321/myreport-000
unload ('select * from #my_report')
to 's3://mybucket/reporting/' || replace(trunc(current_date - 1),'-','') || '/myreport'
credentials 'aws_access_key_id=key;aws_secret_access_key=secretkey'
delimiter ','
gzip addquotes null as ''
PARALLEL off
allowoverwrite;
Jedoch habe ich den Fehler
[Amazon](500310) Invalid operation: syntax error at or near "||";
Ist die String-Verkettung nicht zuerst bewerten?
Könnte es mit PREPARE/EXECUTE getan werden? http://docs.aws.amazon.com/redshift/latest/dg/r_PREPARE.html – systemjack
@systemjack - Von dem, was ich weiß, Nein. Es kann nicht mit PREPARE/EXECUTE Befehl gemacht werden. Ein EXECUTE-Befehl muss für die vorbereitete Anweisung ausgegeben werden, die wiederum der obigen Frage entspricht. –