当我在用于将数据从 SAP BW 传输到 Azure 的 Azure 数据工厂管道上使用以下 MDX 查询时:
SELECT { [Measures].[00O2TN6100F25XV2PK2K7KLIP] } ON COLUMNS,
NON EMPTY { [ZBW_Country].[LEVEL01].MEMBERS, [ZBW_Province].[LEVEL01].MEMBERS, [ZBW_City].[LEVEL01].MEMBERS } ON ROWS
FROM ZCO_MP01/YCO_MP01_Q006_V2_RS1
WHERE [0CALYEAR].[2019]
我的桌子看起来像:
Country Province City Sales
Canada 13.12
ON 13.12
Toronto 13.12
所以我尝试将其重新定义为以下查询:
SELECT {[Measures].[00O2TN6100F25XV2PK2K7KLIP] }ON 0,
NON EMPTY CROSSJOIN(CROSSJOIN(DISTINCT([ZBW_Country].[LEVEL01].MEMBERS), DISTINCT([ZBW_Province].[LEVEL01].MEMBERS)), DISTINCT([ZBW_City].[LEVEL01].MEMBERS)) PROPERTIES MEMBER_CAPTION, [ZBW_MATNR].[2ZBW_MATNR] ON 1
FROM [ZCO_MP01/YCO_MP01]
这个查询对我有用,它解决了问题,现在我收到这样的数据
Country Province City Sales
Canada ON Toronto 13.12
但是当我引入其余字段(我有近 55 个字段)时,我的 Azure 管道继续运行,我看不到它既不工作也不中止。
谁能在不使用交叉连接的情况下帮助我修改此查询以解决上述问题?我怀疑我的查询使系统处理速度非常慢。
仅供参考:我是 MDX 新手,我确实在 Microsoft Power Bi 上启用了跟踪,然后使用其日志中的 MDX 查询来起草上述查询)