本文介紹如何在MaxCompute用戶端上運行SQL命令並通過Tunnel Download匯出結果資料。
前提條件
已向MaxCompute的表中匯入資料。更多匯入資料操作,請參見匯入資料。背景資訊
MaxCompute用戶端支援DDL、DML、DQL等操作,您可以結合相應文法運行SQL命令。MaxCompute用戶端的常用SQL命令,請參見常用命令列表。
步驟一:運行SQL命令
- 在MaxCompute用戶端,基於非分區表bank_data和分區表bank_data_pt,查詢各個學曆下的貸款買房的單身人士數量,並將結果分別儲存到result_table1和result_table2中。命令樣本如下。
--查詢非分區表bank_data中各個學曆下的貸款買房的單身人士數量並將查詢結果寫入result_table1。 insert overwrite table result_table1 select education, count(marital) as num from bank_data where housing = 'yes' and marital = 'single' group by education; --查詢分區表bank_data_pt中各個學曆下的貸款買房的單身人士數量並將查詢結果寫入result_table2。 set odps.sql.allow.fullscan=true; insert overwrite table result_table2 select education, count(marital) as num, credit from bank_data_pt where housing = 'yes' and marital = 'single' group by education, credit;
- 查詢result_table1和result_table2的寫入結果。命令樣本如下。
返回結果如下。select * from result_table1; select * from result_table2;
--result_table1中的資料。 +------------+------------+ | education | num | +------------+------------+ | basic.4y | 227 | | basic.6y | 172 | | basic.9y | 709 | | high.school | 1641 | | illiterate | 1 | | professional.course | 785 | | university.degree | 2399 | | unknown | 257 | +------------+------------+ --result_table2中的資料。 +------------+------------+------------+ | education | num | credit | +------------+------------+------------+ | basic.4y | 164 | no | | basic.4y | 63 | unknown | | basic.6y | 104 | no | | basic.6y | 68 | unknown | | basic.9y | 547 | no | | basic.9y | 162 | unknown | | high.school | 1469 | no | | high.school | 172 | unknown | | illiterate | 1 | unknown | | professional.course | 721 | no | | professional.course | 64 | unknown | | university.degree | 2203 | no | | university.degree | 196 | unknown | | unknown | 206 | no | | unknown | 51 | unknown | +------------+------------+------------+
步驟二:匯出結果資料
基於Tunnel Download將MaxCompute表中的資料匯出到本地。更多Tunnel操作,請參見Tunnel命令。匯出結果資料的操作流程如下:
- 確認資料檔案的匯出路徑。資料檔案的匯出路徑有兩種選擇:您可以直接將資料以檔案形式匯出至MaxCompute用戶端的
bin
目錄中,匯出路徑為檔案名稱.尾碼名
;也可以匯出至其他路徑下,例如D盤的test檔案夾,匯出路徑為D:\test\檔案名稱.尾碼名
。假設,表result_table1的資料匯出至MaxCompute用戶端的
bin
目錄中,result_table2的資料匯出至D盤的test檔案夾下。 - 在MaxCompute用戶端,執行Tunnel Download命令匯出資料。命令樣本如下。
當出現圖示OK字樣,說明匯出完成。tunnel download result_table1 result_table1.txt; tunnel download result_table2 D:\test\result_table2.csv;
- 在匯出路徑下確認資料檔案的存在性及完整性。
result_table1的匯出結果確認如下。
result_table2的匯出結果確認如下。
後續步驟
如果您不再需要樣本資料或MaxCompute專案,可以刪除資料或MaxCompute專案,以免產生不必要的資源浪費及賬單費用。刪除資料或MaxCompute專案的操作,請參見刪除表或MaxCompute專案。