Power BI查询中的变量

时间:2019-01-03 09:53:38

标签: powerbi powerquery

我有一个SQL查询可将数据导入Power BI。例如:

select a,b,c,d from table1 
where a in ('1111','2222','3333' etc.)

但是,变量列表('1111','2222','3333'等)每天都会更改,因此我希望在刷新数据之前先更新SQL语句。这可能吗?

理想情况下,我想保留一个包含a值列表的电子表格(在此示例中),因此在刷新之前,它将这些参数输入到此脚本中。 我遇到的另一个问题是列表将具有不同的参数nr,因此最后一个变量需要没有逗号。

我正在考虑的另一种选择是在不使用where a in ('1111','2222','3333' etc.)的情况下运行脚本,然后使用这些列表加载电子表格并根据该列表过滤报告,但这将要导入大量数据进入Power BI。

这是我有史以来的第一篇文章,尽管我多年来一直从Stackoverflow寻求帮助,所以希望一切都清楚。

1 个答案:

答案 0 :(得分:-1)

我将创建一个新查询以从电子表格中读取“ a值”。我会将“加载到/导入数据”选项设置为仅创建连接(以避免重复数据)。

然后在您的SQL查询中,我将删除where子句。这样,您实际上根本不需要编写自定义SQL-只需从导航UI中选择表/视图即可。

然后从“ table1”查询中,我将添加一个“合并查询”步骤,并使用“联接类型:内部”连接到“ a”列上的“ a values”查询。结果行将仅是具有匹配的“ a”列值的行(类似于您当前的SQL where子句)。

Power Query无法将其作为单个查询发送到SQL Server,因此它将首先从table1中选择所有行。但是它仍然相当快捷有效。