Where - OLAP Cube 中的 In 子句

Posted

技术标签:

【中文标题】Where - OLAP Cube 中的 In 子句【英文标题】:Where - In Clause in OLAP Cube 【发布时间】:2015-11-30 08:00:08 【问题描述】:

我正在使用 OLAP 多维数据集,我想从我们的 mysql 数据库中选择数据。我想要的是使用“Where-In”子句,就像在 MySQL 中一样:

SELECT Id, CompanyName, City, Country
FROM Supplier
WHERE Country IN ('USA', 'UK', 'Japan')

据我了解,在 OLAP 多维数据集中,我们通过“切片”数据来选择数据。所以我认为我们无法实现类似于上述“Where In”子句的 st。 sb 可以回答或确认吗?

【问题讨论】:

【参考方案1】:

在 MDX 中,WHERE 子句设置一个或多个层次结构成员(又名切片);过滤是使用subqueries(即SELECT ...(FROM SELECT ...))实现的。

在您的示例中,您可以选择所有国家/地区,然后使用子查询仅过滤美国/英国/日本。或者您可以直接选择它们:

SELECT 
    Id, CompanyName, City, Country  ON 0,
    [Geo].[USA], [Geo].[UK], [Geo].[Japan]  ON 1
FROM ...

希望对您有所帮助。

【讨论】:

我不明白这部分“或者你可以直接选择它们”。能不能详细解释一下? 完成,检查应该给你这个想法的 SELECT。

以上是关于Where - OLAP Cube 中的 In 子句的主要内容,如果未能解决你的问题,请参考以下文章

通过 ASHX 服务查询 OLAP Cube

如何从 Mondrian OlapConnection 获取 org.olap4j.metadata.Cube

使用 Python 连接到 SSAS OLAP Cube

查看 OLAP Cube 的最佳软件 [关闭]

如何从 groupby OLAP Cube 中删除小计?

OLAP CUBE 可以在 HBase 中完成吗?