我有一个SQL查询,该查询生成一个表,该表又会填充自定义视觉对象,该视觉对象将按预期工作。但是,我现在想使用该表,以避免调用另一个SQL脚本来填充新表。
原始SQL创建一个像这样的表:
现在我想使用此信息来填充另一个表,如果我使用原始SQL查询作为起点,我会写:
SELECT
2 AS 'Level',
'Warning' AS 'Text',
[Heading] AS 'Department'
FROM
#t
WHERE
[Inventory Days] > 4
UNION ALL
SELECT
1,
'CodeRedAlert',
[Heading]
FROM
#t
WHERE
[Capacity Warning] > 3
将输出以下内容:
Level Text Department
2 Warning Section 1
2 Warning Section 2
2 Warning Section 3
1 CodeRedAlert Section 2
然后将其用于填充Power BI中的表格可视化,该表格将具有警告图标和红色代码警报。
尽管这在SQL中是可以实现的,但是考虑到我在Power BI中的表中有数据,有没有办法使用DAX在Power BI的范围内构建这个新表?
为获得的任何帮助而欢呼。
答案 0 :(得分:1)
我认为您可以通过以下方式到达自己想要的地方:
Table = UNION(
SELECTCOLUMNS(
FILTER(Table1, [Inventory Days] > 4)
, "Level", 2
, "Text", "Warning"
, "Department", 'Table1'[Heading]
)
, SELECTCOLUMNS(
FILTER(Table1, [Inventory Days] > 3)
, "Level", 1
, "Text", "CodeRedAlert"
, "Department", 'Table1'[Heading]
)
)
这是使用SelectColumns函数将数据从原始表中拉出并设置常量字段的方法。我用过滤器替换了SQL示例中的'where'子句。然后将两个不同的集合用Union缝合在一起。
希望有帮助