Excel多表匯總與 SQL查詢語句
同學們好啊 ,首先以實例講解一下怎樣合併多表的資料。
資料原始檔案中有三個表,分別是一組、二組、三組,裡面有各個銷售員的銷售資料。
Step 1、建立連接並獲取資料點擊【資料】選項卡下面的“現有連接”。
在彈出的對話方塊中點擊左下角的“流覽更多”按鈕,找到資料所在的檔,會彈出以下對話方塊。
任意選擇一個表並點擊“確定”按鈕就可以了,
在彈出的對話方塊中可以選擇顯示清單或者直接創建樞紐分析表,並且可以指定資料顯示的位置。
這裡選擇“表”,這樣我們就建立了連結並初步導入了資料。
在上一步中得到的資料區域,
在打開的對話方塊中輸入查詢語句:
Select "一組" as 資料來源,* from [一組$] union all
Select "二組" as 資料來源,* from [二組$] union all
Select "三組" as 資料來源,* from [三組$]
這樣就完成了多表匯總,是不是感覺很簡單呢?
最後和大家分享一些常用的SQL查詢語句,到時候可以適當修改一下代碼中的工作表名稱,就可以應用到自己的工作中了。
常用查詢SQL語句示例1、查詢名稱為Data的表中的所有欄位的資料
Select * from [Data$]
注意:Excel工作表名稱後面需要加上美元符號$,並且需要放到方括號[]中;星號*表示查詢所有欄位的資料。
2、查詢名稱為Data的表中的“銷售員”和“銷量”兩個欄位。
Select [銷售員],[銷量] from [Data$]
注意:欄位名稱可以不加方括號,但是當欄位名稱中間有空格、欄位名是SQL語句中的保留名稱等特殊情況時就必須要加方括號;在查詢時,只要表中有這些欄位就可以了,不用管這些欄位的前後順序。
3、查詢名稱為Data的表中銷售員Lily的銷售資訊
Select * from [Data$] Where 銷售員="Lily"
注意:需要指定條件時就用Where語句,多個條件用And、Or連接,分別表示並且、或;條件格式為[欄位名]=“具體內容”,
4、查詢名稱為Data的表中銷售員Lily的銷售總額
Select 銷售員,Sum(銷量) as Lily的總銷量 from [一組$] Where 銷售員="Lily" group by 銷售員
注意:進行匯總的時候,可以直接用Sum、Group by;在select中出現的欄位,如果這個欄位是匯總欄位,則這個欄位必須加到Group by裡面;Sum函數是求和,也可用其他功能函數,比如:平均值AVG、計數Count、最大值Max、最小值Min;As可以重命名欄位。
5、查詢名稱為Data的表中D5:F200區域的資料中銷售員和銷量兩個欄位
Select [銷售員],[銷量] from [Data$D5:F200]
注意:在Data$後面加上區域的位址,如果不知道最後一行是多少,或者為了讓資料區域是動態的,可以省略最後一行的行號,如下。
Select [銷售員],[銷量] from [Data$D5:F]
6、查詢名稱為一組、二組、三組三個表中的所有資料
Select "一組" as 資料來源,* from [一組$] union all Select "二組" as 資料來源,* from [二組$] union all Select "三組" as 資料來源,* from [三組$]
注意:有需要合併的表,就用union all連接起來,一般最多不能超過50個。
在輸入SQL語句時,各種符號一定要在英文狀態下輸入,否則你可能半天都檢查不出來錯在哪兒;如果使用星號*,那幾個表中的資料欄位順序要一致、資料區域大小要一致,如果直接指定欄位名稱,則不受此限制。
7、查詢名稱為一組、二組、三組三個表中銷售員Lily和David的所有資料
select * from (Select * from [一組$] union all Select * from [二組$] union all Select * from [三組$]) where 銷售員 in ("Lily","David")
注意:可以在一個查詢語句的外面在嵌套上另外一個查詢語句,表示從查詢結果中再次查詢。
8、查詢名稱為Data的表中的所有欄位的資料並按照日期排序
Select * from [Data$] order by 日期
注意:排序用order by,默認是昇冪,加上DESC表示降冪,DESC是descending的縮寫。降冪示例:order by 日期 Desc
End.
文章轉載自:Excel輕鬆學
中國統計網,是國內最早的大資料學習網站,歡迎關注!Excel2016視頻教程技巧函數透視表圖表VBA巨集資料處理分析線上課程 ¥90 購買
比如:平均值AVG、計數Count、最大值Max、最小值Min;As可以重命名欄位。5、查詢名稱為Data的表中D5:F200區域的資料中銷售員和銷量兩個欄位
Select [銷售員],[銷量] from [Data$D5:F200]
注意:在Data$後面加上區域的位址,如果不知道最後一行是多少,或者為了讓資料區域是動態的,可以省略最後一行的行號,如下。
Select [銷售員],[銷量] from [Data$D5:F]
6、查詢名稱為一組、二組、三組三個表中的所有資料
Select "一組" as 資料來源,* from [一組$] union all Select "二組" as 資料來源,* from [二組$] union all Select "三組" as 資料來源,* from [三組$]
注意:有需要合併的表,就用union all連接起來,一般最多不能超過50個。
在輸入SQL語句時,各種符號一定要在英文狀態下輸入,否則你可能半天都檢查不出來錯在哪兒;如果使用星號*,那幾個表中的資料欄位順序要一致、資料區域大小要一致,如果直接指定欄位名稱,則不受此限制。
7、查詢名稱為一組、二組、三組三個表中銷售員Lily和David的所有資料
select * from (Select * from [一組$] union all Select * from [二組$] union all Select * from [三組$]) where 銷售員 in ("Lily","David")
注意:可以在一個查詢語句的外面在嵌套上另外一個查詢語句,表示從查詢結果中再次查詢。
8、查詢名稱為Data的表中的所有欄位的資料並按照日期排序
Select * from [Data$] order by 日期
注意:排序用order by,默認是昇冪,加上DESC表示降冪,DESC是descending的縮寫。降冪示例:order by 日期 Desc
End.
文章轉載自:Excel輕鬆學
中國統計網,是國內最早的大資料學習網站,歡迎關注!Excel2016視頻教程技巧函數透視表圖表VBA巨集資料處理分析線上課程 ¥90 購買