SELECT INTO Statements
You can use the SELECT INTO statement to export formatted data to a file.
Data Export with an SQL Query
The following query exports data into a file formatted in comma-separated values (CSV):
SELECT City, CompanyName INTO [csv://[CData].[Default].Customers.txt] FROM [[CData].[Default].Customers] WHERE Country = 'US'You can specify other formats in the file URI. The possible delimiters are tab, semicolon, and comma with the default being a comma. The following example exports tab-separated values:
SELECT City, CompanyName INTO [csv://[CData].[Default].Customers.txt;delimiter=tab] FROM [[CData].[Default].Customers] WHERE Country = 'US'
C#
String connectionString = "Server=127.0.0.1;Port=21050;"; using (ApacheImpalaConnection connection = new ApacheImpalaConnection(connectionString)) { ApacheImpalaCommand cmd = new ApacheImpalaCommand("SELECT City, CompanyName INTO [csv://[CData].[Default].Customers.txt] FROM [[CData].[Default].Customers] WHERE Country = 'US' ", connection); int rowsAffected = cmd.ExecuteNonQuery(); }
VB.NET
Dim connectionString As [String] = "Server=127.0.0.1;Port=21050;" Using connection As New ApacheImpalaConnection(connectionString) Dim cmd As New ApacheImpalaCommand("SELECT City, CompanyName INTO [csv://[CData].[Default].Customers.txt] FROM [[CData].[Default].Customers] WHERE Country = 'US'", connection) Dim rowsAffected As Integer = cmd.ExecuteNonQuery() End UsingYou can specify other file formats in the URI. The following example exports tab-separated values:
C#
String connectionString = "Server=127.0.0.1;Port=21050;"; using (ApacheImpalaConnection connection = new ApacheImpalaConnection(connectionString)) { ApacheImpalaCommand cmd = new ApacheImpalaCommand("SELECT * INTO [[CData].[Default].Customers] IN [csv://filename=c:/[CData].[Default].Customers.csv;delimiter=tab] FROM [[CData].[Default].Customers] WHERE Country = 'US'", connection); int rowsAffected = cmd.ExecuteNonQuery(); }
VB.NET
Dim connectionString As [String] = "Server=127.0.0.1;Port=21050;" Using connection As New ApacheImpalaConnection(connectionString) Dim cmd As New ApacheImpalaCommand("SELECT * INTO [[CData].[Default].Customers] IN [csv://filename=c:/[CData].[Default].Customers.csv;delimiter=tab] FROM [[CData].[Default].Customers] WHERE Country = 'US'", connection) Dim rowsAffected As Integer = cmd.ExecuteNonQuery() End Using