Export Redshift table to SQL file for upseting

Want to export data from Redshift table to SQL file for upserting?

Upsert: inserts rows into a table if they do not already exist, or updates them if they do.

Try Withdata DBToFile, a Redshift to SQL converter for Windows, Linux, and macOS, Export Redshift data to SQL, Easy and Fast.

Download Withdata DBToFile Download DBToFile

Export data from Redshift table to SQL file for upserting

Choose Redshift and logon.

export Redshift table to UPSERT_SQL file - Choose Redshift and logon

Click “Export From Table” at task dialog.

Export data from Redshift Table To Upsert_Sql File - task window

Select SQL file type.

Export data from Redshift Table To Upsert_Sql File - select Upsert_Sql file type

1. Select Redshift table.

Unload data from Redshift Table To Upsert_Sql File - select table

2. Enter data file name.

Set “Convert Mode” to “Upsert”, enter “Update Key”.

Extract data from Redshift Table To Upsert_Sql File - enter file name

3. Set rows options.

Convert data from Redshift Table To Upsert_Sql File - summary

4. Export.

Dump data from Redshift Table To Upsert_Sql File - export

After exporting, you can view output upserting SQL file.

Export data from Redshift Table To SQL File - view upserting SQL file

You can schedule and automate this converting task by:

  1. Save session and create .bat (Windows) or .sh (Linux/macOS) file for “Redshift to SQL” conversion.
  2. Set scheduled task for “Redshift to SQL” conversion.

FAQ

What is Withdata DBToFile?
How long does it take to export Redshift to SQL?
Is it safe to export Redshift to SQL using DBToFile?
Can I export Redshift to SQL on Linux, Mac OS?
Can I export Redshift to SQL in command line?


More about Withdata DBToFile – Redshift to SQL converter

Redshift → SQL reference

Type mapping

Value kindin Redshiftin SQL
IntintegerINT
BigintbigintBIGINT
Decimalnumeric(p,s)DECIMAL(p,s)
Floatdouble precisionDOUBLE PRECISION
Textvarchar(n)VARCHAR(n)
Long textvarchar(max)TEXT / CLOB
DatedateDATE
DatetimetimestampTIMESTAMP
Binary(none)BLOB / BYTEA
BooleanbooleanBOOLEAN / SMALLINT
JSONsuperJSON / TEXT

Dialect differences

Redshift is a database server and SQL is a file format, so the gap is wider than a dialect difference – the rows below are where values and structure stop lining up.

Propertyin Redshiftin SQL
port5439—
identifiers"double quotes"Two competing conventions: single-quoted literals and diale...
row limitLIMIT n—
datestimestamp, dateDepends on the dialect: DATE literals, TO_DATE(), or plain ...
long textVARCHAR(MAX)—
binary—Dialect-specific: X-quoted literal, 0x hex, or decode()
separator—Statement terminators (;)
encoding—No declaration
typing—Types belong to the target database, and they differ betwee...
shapeTables of rows and columnsStatements; a dump usually means CREATE TABLE plus INSERT rows
ceiling—No formal limit, but a single INSERT statement has to fit i...

Command line

SideCommand
RedshiftUNLOAD to S3
Redshift (load)COPY from S3

No counterpart

  • SQL has no equivalent for Binary – it has to be flattened or dropped.

Redshift to CSV without the manual work

For batch jobs, large files and scheduling use the Redshift to CSV converter — an offline desktop app for Windows, Linux and macOS. Free trial.


Posted

in

by

Tags: