{eval=Array;=+count(Array);}

成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

問(wèn)答專欄Q & A COLUMN

Excel中如何用SQL進(jìn)行多工作簿匯總?

felix0913felix0913 回答0 收藏1
收藏問(wèn)題

2條回答

leo108

leo108

回答于2022-06-28 13:58

對(duì)于經(jīng)常使用Excel的人來(lái)說(shuō),在Excel中使用SQL能高效處理你的數(shù)據(jù),但據(jù)我所知Excel中的SQL語(yǔ)法與MySQL數(shù)據(jù)的語(yǔ)法還有點(diǎn)不一樣?,F(xiàn)在我就來(lái)實(shí)例說(shuō)明如何用SQL語(yǔ)句對(duì)多個(gè)工作簿進(jìn)行匯總。假如我們要匯總?cè)缦氯齻€(gè)工作簿

1. 學(xué)生信息表

2. 學(xué)生成績(jī)表

3. 學(xué)生興趣表

將這三個(gè)工作簿按相同學(xué)號(hào)進(jìn)行合并,大致分如下幾步:

1. 加載數(shù)據(jù)

在Excel中,依次點(diǎn)擊:數(shù)據(jù)->自其它來(lái)源->來(lái)自Microsoft Query->Excel Files*

然后再找到你Excel表格的存放目錄,如下圖

點(diǎn)擊下面你要加載的Excel數(shù)據(jù)表,進(jìn)入下面頁(yè)面

將上圖可用的三張表都加入到右邊查詢結(jié)果中的列,加入完成后點(diǎn)擊下一步,數(shù)據(jù)就加載完成了。

2. 編寫SQL代碼并執(zhí)行

接下來(lái)點(diǎn)擊上面的SQL按鈕開始寫SQL合并代碼。單純的合并代碼如下

SELECT

tm.*,

tn.興趣愛好 AS 興趣愛好

FROM(

SELECT

ta.學(xué)號(hào) AS 學(xué)號(hào),

ta.姓名 AS 姓名,

ta.年齡 AS 年齡,

ta.性別 AS 性別,

ta.身高 AS 身高,

ta.出生地 AS 出生地,

tb.語(yǔ)文成績(jī) AS 語(yǔ)文成績(jī),

tb.數(shù)學(xué)成績(jī) AS 數(shù)學(xué)成績(jī)

FROM(

SELECT

tt.學(xué)號(hào) AS 學(xué)號(hào),

tt.姓名 AS 姓名,

tt.年齡 AS 年齡,

tt.性別 AS 性別,

tt.身高 AS 身高,

tt.出生地 AS 出生地

FROM [學(xué)生基本信息表$] tt

)ta

INNER JOIN(

SELECT

tt.學(xué)號(hào) AS 學(xué)號(hào),

tt.語(yǔ)文成績(jī) AS 語(yǔ)文成績(jī),

tt.數(shù)學(xué)成績(jī) AS 數(shù)學(xué)成績(jī)

FROM [學(xué)生成績(jī)表$] tt

)tb

ON ta.學(xué)號(hào)=tb.學(xué)號(hào)

)tm

INNER JOIN(

SELECT

tt.學(xué)號(hào) AS 學(xué)號(hào),

tt.興趣愛好 AS 興趣愛好

FROM [學(xué)生興趣表$] tt

)tn

ON tm.學(xué)號(hào)=tn.學(xué)號(hào)

將代碼寫好后復(fù)制放入文本框中,點(diǎn)擊確定按鈕,就開始執(zhí)行SQL語(yǔ)句。結(jié)果如下

這樣就完成了三個(gè)工作簿的數(shù)據(jù)合并,接下來(lái)將數(shù)據(jù)返回Excel表。

3. 返回?cái)?shù)據(jù)到Excel表

點(diǎn)擊左上角的文件->將數(shù)據(jù)返回Microsoft Excel,彈出如下頁(yè)面

選擇數(shù)據(jù)的存放位置為新工作表,然后點(diǎn)擊確定即可,最終得到如下數(shù)據(jù)表

這樣就完成了三個(gè)工作簿的數(shù)據(jù)合并。


Tips:

1. 由于Excel中執(zhí)行SQL語(yǔ)句時(shí)沒有比較詳細(xì)的報(bào)錯(cuò)信息,如果SQL代碼語(yǔ)法有錯(cuò)誤有可能執(zhí)行會(huì)報(bào)錯(cuò),這個(gè)問(wèn)題可以上網(wǎng)查詢或者直接在評(píng)論區(qū)問(wèn)我。

2. 在Excel SQL中常用到的合并操作有INNER JOIN、LEFT JOIN、RIGHT JOIN、UNION、UNION ALL等,但不支持FULL JOIN。更復(fù)雜的需求都有一定的處理技巧。

評(píng)論0 贊同0
  •  加載中...
cnTomato

cnTomato

回答于2022-06-28 13:58

select * from [工作簿路徑1].[工作表名1] union all

select * from [工作簿路徑2].[工作表名2] union all

select * from [工作簿路徑3].[工作表名3]


個(gè)人比較推薦vba 引用ADO的方法,可以用變量代替工作簿路徑不用一個(gè)個(gè)寫。

展開說(shuō)太麻煩,就這樣吧。

評(píng)論0 贊同0
  •  加載中...

最新活動(dòng)

您已邀請(qǐng)0人回答 查看邀請(qǐng)

我的邀請(qǐng)列表

  • 擅長(zhǎng)該話題
  • 回答過(guò)該話題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說(shuō)句感謝的話吧!
付費(fèi)偷看金額在0.1-10元之間
<