Sql server Power Query可根据Excel列列表筛选SQL视图

Sql server Power Query可根据Excel列列表筛选SQL视图,sql-server,excel,powerbi,powerquery,m,Sql Server,Excel,Powerbi,Powerquery,M,有没有一种方法可以使用Power Query根据excel表列中的值列表过滤SQL视图 我有一个SQL视图,它返回大量数据(数百万条记录或属性)。用户希望根据属性ID的excel表格列筛选该属性。我知道我可以根据power query中视图和excel列之间的属性ID进行合并联接。但是看起来合并首先带来了数百万条记录,然后在连接中过滤掉。这需要很长时间。用户希望每天动态更改PropertyID列表并运行查询 本质上,我想在Excel中创建power query SQL中有什么 SELECT *

有没有一种方法可以使用Power Query根据excel表列中的值列表过滤SQL视图

我有一个SQL视图,它返回大量数据(数百万条记录或属性)。用户希望根据属性ID的excel表格列筛选该属性。我知道我可以根据power query中视图和excel列之间的属性ID进行合并联接。但是看起来合并首先带来了数百万条记录,然后在连接中过滤掉。这需要很长时间。用户希望每天动态更改PropertyID列表并运行查询

本质上,我想在Excel中创建power query SQL中有什么

SELECT * FROM SQLViewName 
WHERE PropertyID IN (Select Column from ExcelTable) 

您应该能够使用
列表来完成此操作。包含
函数

如果我的
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)
这使我能够在几秒钟内加载数百万行表