sql-server - SQL Server MDX 查询:使用 CROSSJOIN 和过滤器 = 0 分钟的所有成员帐户和成员电子邮件
问题描述
我是 SQL Server 的新手,正在尝试获取一个查询以显示所有 [Mins] 字段具有(空)值的 [Email](即用户的电子邮件地址)的成员,并且我还想要一列用户的[帐户名称](即他们工作的公司)。
让查询以“.Members”结尾的 [Account Name] 运行是我失败的地方。所有这三个字段都在不同的表上,我正在使用 CROSSJOIN 和 FILTER 的组合。
我不确定查询是否不会运行,因为:
- 我使用 .Members 不正确,因为我同时使用 [Email] 和 [Account Name],或者
- 我们有某种记忆问题(这不是第一次!)。
我是 SQL 新手,在 StackOverFlow 上找到了针对部分问题的不同解决方案,可以成功地将以下代码拼凑在一起,但我无法通过在“[Account Name]”之后添加“.Members”来拼凑它 查询运行但几分钟后它会耗尽内存。
如果我在“[Account Name]”之后不包含“.Members”,则查询会在大约 17 秒后成功运行;但是,它只显示帐户名称的“全部”,而不显示帐户。我只想在电子邮件旁边显示帐户!
'''
SELECT
[Measures].[Sum of Mins]
ON COLUMNS,
CROSSJOIN(
[vw_AccountData].[Account Name].Members,
Filter (
[vw_UserData].[Email].Members,
[Measures].[Sum of Mins] = 0
))
ON ROWS
FROM [Model]
'''
解决方案
我的理解是,对于此度量 [Measures].[Sum of Mins,您需要他们的电子邮件 ID 和帐户名的空值或零值的用户。我假设您的多维数据集中有一个度量 [Measures].[Sum of Mins] 和维度属性 [vw_AccountData].[Account Name] 和 [vw_UserData].[Email]
Select
[Measures].[Sum of Mins]
ON COLUMNS,
filter
(
([vw_AccountData].[Account Name].[Account Name],[vw_UserData].[Email].[Email]),
[Measures].[Sum of Mins] = 0
)
on rows
from
[Model]
推荐阅读
- findbugs - 如何修复 FindBus、SSCU:方法从已被 3rdparty jar 遮蔽的类中调用方法
- reactjs - 无法为 react-charts-2 设置选项
- python - 遍历两个不均匀列表并在第二个列表结束时停止
- reactjs - React - nextjs 在 useEffect 中调用自定义钩子
- python - 如果窗口留在后台,Python Selenium 将停止
- svelte - 单击 href 时,新 URL 不会在 Svelte 中重新加载页面
- php - 如何向 laravel 中的所有设备发送 Firebase 云消息传递通知
- android - 将数据从 csv 填充到房间数据库 kotlin
- c# - 反应属性未设置为对象的实例
- css - Fontawesome + Chrome 扩展 - fa-solid-900.woff2 未加载