【发布时间】:2014-12-25 15:25:05
【问题描述】:
使用 Adventureworks DW 2008 多维数据集,我正在尝试构建一个 MDX 查询,该查询将返回没有特定原因代码的互联网订单计数。
FactInternetSales 与 FactInternetSalesReason 具有多对多关系。每笔销售都有 1 个或多个原因代码。
如果我尝试退回未使用“促销中”原因的订单,我仍然会将促销中的订单计入计数,因为它们还有其他原因。
MDX怎么写,说如果这个订单有这个原因,不计入计数,不考虑其他原因?
针对冒险作品 sql 数据仓库的等效 SQL 将是:
select count(distinct salesordernumber) from FactInternetSales
where not exists (select salesorderNumber
from FactInternetSalesReason
where SalesReasonKey = 2
and FactInternetSales.SalesOrderNumber = FactInternetSalesReason.SalesOrderNumber
)
【问题讨论】:
标签: sql-server ssas mdx adventureworks azure-sqldw