![](/img/trans.png)
[英]SQL Query Filter to locate DUPLICATES in a column based on Values in 2 other columns
[英]Power Query to Filter a SQL view based on an Excel column list
有沒有一種方法可以使用Power Query根據excel表列中的值列表過濾SQL視圖?
我有一個SQL視圖,該視圖返回大量數據(數百萬條記錄或屬性)。 用戶希望基於屬性ID的excel表列進行過濾。 我知道我可以基於視圖和Power查詢中的excel列之間的屬性ID進行合並聯接。 但是合並似乎首先帶來了數百萬條記錄,然后在聯接中對其進行了過濾。 這需要很長時間。 用戶希望每天動態更改propertyID列表並運行查詢。
本質上,我想在Excel Power查詢中創建SQL中的內容
SELECT * FROM SQLViewName
WHERE PropertyID IN (Select Column from ExcelTable)
您應該能夠使用List.Contains
函數執行此操作。
如果我的ExcelTable
是
ID
---
436
437
438
439
然后添加這樣的過濾器就可以解決問題:
Table.SelectRows(SQLViewName, each List.Contains(ExcelTable[ID], [PropertyID]))
當我嘗試此操作並在最后應用的步驟中執行“查看本機查詢”時,它會將Excel表折疊為WHERE
子句,其中ExcelTable
值作為文字,如下所示:
select [_].[PropertyID],
[_].[OtherColumns]
from [dbo].[SQLViewName] as [_]
where [_].[PropertyID] in (436, 437, 438, 439)
這使我可以在短短幾秒鍾內加載數百萬行的表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.