首頁 > 易卦

Excel+SQL的另類用法說明

作者:由 一隻女程式猿 發表于 易卦日期:2023-02-05

sql表怎麼匯出為excel

前言

因為工作原因,最近經常會給運營人員匯出一些報表資料,所以常常跟 Excel 資料打交道。處理的多了,久而久之,發現 Excel 本身也可以做一些高階複雜的資料處理。

比如,根據業務需要,需同時匯出相關業務的多張報表,而這些基礎資料會存放到不同的資料庫及資料表中,所以導致資料難以查詢,分組,合併。

根據以往經驗,我們一般選擇把幾個不同資料庫的資料都匯出到同一個庫中,方便我們進行連表查詢,得到想要的資料。

然而把多個數據庫中的資料匯出,再導到同一個庫的操作非常繁瑣,複雜。

所以,在這裡給大家分享另一種思路來處理這些麻煩的資料:使用 Excel 。

使用 Excel 怎麼處理這些複雜的資料呢? 萬變不離其宗,處理這些資料,依然會使用到我們熟悉的SQL,對,你沒有看錯,就是在 Excel 中執行SQL。

Excel+SQL的另類用法說明

接下來,舉個栗子,來具體展示一下,在 Excel 中如何使用SQL處理多個表中資料。

場景

假設我們有一個使用者中心子系統,該系統會記錄使用者的每次登入,退出記錄到日誌庫logDB的access_log表中,同時使用者資訊儲存在userDB的user_info表中。

Excel+SQL的另類用法說明

userDB的user_info表結構

Excel+SQL的另類用法說明

logDB的access_log表結構

現在要求匯出“張三,李四,王五3個使用者的所有登入登出記錄”。

首先,

我們將張三,李四,王五的使用者資訊匯出到excel:user_info。xlsx 中。如圖:

Excel+SQL的另類用法說明

user_info。xlsx

然後,

將 張三,李四,王五對應的登入記錄匯出到 excel : access_log。xlsx中。如圖:

Excel+SQL的另類用法說明

access_log。xlsx

接下來我們就開始使用Excel對 user_info。xlsx , access_log。xlsx 2個表進行SQL查詢。

第三步,

點選Excel 選單欄:資料 -> 來自其他源 -> 來自Microsoft Query,如圖:

Excel+SQL的另類用法說明

然後選擇資料來源中的“Excel File* ”,並點選確定按鈕。

Excel+SQL的另類用法說明

接著,選擇Excel檔案所在位置,並點選確定。

Excel+SQL的另類用法說明

然後,點選“選項”,勾選“系統表”,再點選確定。

Excel+SQL的另類用法說明

Excel+SQL的另類用法說明

點選確定後,我們就能在“可用的表和列”中看到我們的Excel Sheet頁,選擇需要的列加入到右側,點選下一步

Excel+SQL的另類用法說明

這時,可以看到2個表及表中的資料。然後連線2個表中相同的列,如下圖所示:

Excel+SQL的另類用法說明

點選下圖所示按鈕“SQL”,彈出SQL編輯框,這樣就可以隨意修改SQL來查詢我們需要的資料。

Excel+SQL的另類用法說明

最後,點選下圖按鈕,選擇儲存到“新工作表”,就得到我們最終想要的資料。

Excel+SQL的另類用法說明

Excel+SQL的另類用法說明

結語

以上示例只是簡單的演示了一下Excel的SQL查詢功能,實際工作中遇到的報表會比這複雜的多,將會更好的體現該功能的強大。

這種使用Excel + SQL處理資料的方式可以彌補一些無法使用資料庫直接操作資料的特殊情況。

雖然這不是處理資料的最優方式,但也可以作為一種備選,以應對一些緊急資料情況。

以上分享提供一種新的思路來處理資料,大家如果有別的思路或想法,可以在下方留言,一起交流學習。