對于經常使用Excel的人來說,在Excel中使用SQL能高效處理你的數據,但據我所知Excel中的SQL語法與MySQL數據的語法還有點不一樣。現在我就來實例說明如何用SQL語句對多個工作簿進行匯總。假如我們要匯總如下三個工作簿
1.學生信息表
2.學生成績表
3.學生興趣表
將這三個工作簿按相同學號進行合并,大致分如下幾步:
在Excel中,依次點擊:
然后再找到你Excel表格的存放目錄,如下圖
點擊下面你要加載的Excel數據表,進入下面頁面
將上圖可用的三張表都加入到右邊
接下來點擊上面的
SELECT
tm.*,
tn.興趣愛好AS興趣愛好
FROM(
SELECT
ta.學號AS學號,
ta.姓名AS姓名,
ta.年齡AS年齡,
ta.性別AS性別,
ta.身高AS身高,
ta.出生地AS出生地,
tb.語文成績AS語文成績,
tb.數學成績AS數學成績
FROM(
SELECT
tt.學號AS學號,
tt.姓名AS姓名,
tt.年齡AS年齡,
tt.性別AS性別,
tt.身高AS身高,
tt.出生地AS出生地
FROM[學生基本信息表$]tt
)ta
INNERJOIN(
SELECT
tt.學號AS學號,
tt.語文成績AS語文成績,
tt.數學成績AS數學成績
FROM[學生成績表$]tt
)tb
ONta.學號=tb.學號
)tm
INNERJOIN(
SELECT
tt.學號AS學號,
tt.興趣愛好AS興趣愛好
FROM[學生興趣表$]tt
)tn
ONtm.學號=tn.學號
將代碼寫好后復制放入文本框中,點擊確定按鈕,就開始執行SQL語句。結果如下
這樣就完成了三個工作簿的數據合并,接下來將數據返回Excel表。
點擊左上角的
選擇數據的存放位置為
這樣就完成了三個工作簿的數據合并。
2.在ExcelSQL中常用到的合并操作有INNERJOIN、LEFTJOIN、RIGHTJOIN、UNION、UNIONALL等,但不支持FULLJOIN。更復雜的需求都有一定的處理技巧。