以分隔或固定寬度的格式卸載資料 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

以分隔或固定寬度的格式卸載資料

您可以分隔或固定寬度的格式來卸載資料。預設輸出是以縱線分隔 (使用 '|' 字元)。

以下範例將逗點指定為分隔符號:

unload ('select * from venue') to 's3://mybucket/tickit/venue/comma' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' delimiter ',';

產生的輸出看起來像這樣:

20,Air Canada Centre,Toronto,ON,0 60,Rexall Place,Edmonton,AB,0 100,U.S. Cellular Field,Chicago,IL,40615 200,Al Hirschfeld Theatre,New York City,NY,0 240,San Jose Repertory Theatre,San Jose,CA,0 300,Kennedy Center Opera House,Washington,DC,0 ...

若要卸載設為以 Tab 鍵分隔之檔案的相同結果,請發出下列命令:

unload ('select * from venue') to 's3://mybucket/tickit/venue/tab' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' delimiter as '\t';

或者,您可以使用 FIXEDWIDTH 規格。此規格包含每個表格欄位和欄位寬度的識別符 (字元數)。由於 UNLOAD 命令會失敗,而不會截斷資料,因此請將寬度指定為至少該資料欄最長項目的長度。卸載固定寬度的資料的運作方式與卸載分隔資料的方式類似,差別在於產生的輸出未包含分隔字元。例如:

unload ('select * from venue') to 's3://mybucket/tickit/venue/fw' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' fixedwidth '0:3,1:100,2:30,3:2,4:6';

固定寬度的輸出看起來如下:

20 Air Canada Centre Toronto ON0 60 Rexall Place Edmonton AB0 100U.S. Cellular Field Chicago IL40615 200Al Hirschfeld Theatre New York CityNY0 240San Jose Repertory TheatreSan Jose CA0 300Kennedy Center Opera HouseWashington DC0

如需 FIXEDWIDTH 規格的詳細資訊,請參閱 UNLOAD 命令。