如何在 Microsoft Excel 中執行 SQL 查詢

最後更新: 17/02/2025
作者: 艾薩克
  • 了解如何開啟 Excel 檔案的 SQL 連線並管理資料。
  • 了解如何處理受密碼保護的 Excel 檔案。
  • 在 Excel 中執行 SQL 查詢來篩選、更新和組織資訊。
  • 了解 Excel 如何與 SQL 伺服器整合以提高效率。

高強

Microsoft Excel中 它是商業和數據分析領域最廣泛使用的工具之一。然而,很多人不知道的是,可以運行 SQL查詢 直接在 Excel 試算表上,輕鬆 處理和過濾大量數據 有效率的。

在本文中,我們將探討如何 對 Excel 檔案執行 SQL 查詢,打開 SQL 連接,檢索特定資訊並執行一些最有用的查詢 過濾和修改數據 無需手動滾動瀏覽數百行。

如何使用 Excel 檔案開啟 SQL 連接

在開始對 Excel 檔案執行 SQL 查詢之前,必須建立與文件的連線。為此,您必須配置一個 正確的連接字串,它允許查詢與文件中包含的資訊進行互動。

為了實現這一點,您可以使用以下命令: 連接字串 在您的軟體或自動化流程中:

提供者=Microsoft.ACE.OLEDB.12.0;資料來源=C:\path\file.xlsx;擴充屬性=»Excel 12.0 Xml;HDR=YES»;

哪裡 數據源 應該瞄準 Excel 文件的確切位置 在您的設備上。

在受密碼保護的 Excel 檔案中執行 SQL 查詢

如果 Excel 文件受密碼保護,執行 SQL 查詢之前必須刪除保護。為此,請按照下列步驟操作:

  • 手動或使用自動化軟體開啟檔案。
  • 請正確輸入密碼。
  • 去吧 文件 > 資訊 > 保護書籍 > 使用密碼加密.
  • 輸入新密碼以刪除密碼 空字串 在相應的領域。
  • 以無保護方式儲存檔案並使用 SQL 連接,如上一節所述。
  如何在 Outlook 中建立規則(附實際範例)

使用 SQL 讀取電子表格的內容

要得到 Excel 表中的所有數據 您可以使用下列 SQL 查詢:

SELECT * FROM [Hoja1$]

如果你只想獲得 滿足特定條件的行,您可以使用帶有子句的查詢 WHERE:

SELECT * FROM [Hoja1$] WHERE [NombreColumna] = 'Ejemplo'

使用 SQL 從 Excel 中的一行中刪除數據

與傳統資料庫不同,Excel 不允許使用 DELETE 在 SQL 查詢中。然而,有可能 透過將儲存格值設為空來修改某一行:

UPDATE [Hoja1$] SET [Columna1]=NULL, [Columna2]=NULL WHERE [Columna1]='Ejemplo'

透過排除特定行來過濾訊息

如果需要從 Excel 工作表中取得除具有 列中的特定值,您可以執行以下 SQL 查詢:

SELECT * FROM [Hoja1$] WHERE [Columna1] IS NOT NULL OR [Columna2] IS NOT NULL

使用連結伺服器從 Excel 執行 SQL 查詢

在 Excel 中執行 SQL 查詢的另一個進階選項是透過 連結伺服器。可以將 Excel 與 SQL Server 連線並執行 直接從資料庫查詢 執行以下步驟:

  • 設置一個 OLE DB 資料來源 在 SQL Server 中。
  • 新增連結到的伺服器 sp_addlinkedserver 預存程序.
  • 使用 Excel 作為 SQL Server 直接執行查詢 數據源.

連結伺服器上的 SQL 查詢範例:

SELECT * FROM OPENQUERY(ExcelServ,''SELECT * FROM [Hoja1$]'')

利用 Excel 中 SQL 的多功能性 讓您更有效地處理數據,減少 執行複雜過濾和分析所需的時間.