sql - OBIEE 在其选择中使用不相关的事实表生成查询
问题描述
在分析中,我们按利率计算所有借出物品的数量。它使用一个事实表 F1 和三个维度表 D1、D2 和 D3。F1 连接到所有这三个维度表。因此,正如我所见,不应该生成任何复杂的查询来获得结果。
但是,在运行分析时,计数返回 0。在数据库中,我查看了为此分析生成的物理查询,发现正在创建两个选择,并且在第二个选择中使用了另一个事实表 F2。
奇怪的是 F2 没有在分析中使用,它的列没有在标准选项卡中选择,从 F1、D1、D2 或 D3 到该表不存在 LTS。常见的一件事是这个 F2 也加入了 D1、D2 和 D3。但是如果分析中没有选择F2,为什么要在查询中使用F2,您有什么想法吗?
解决方案
如果是这种情况,那么您的情况是,根据您的模型,两个事实都可以满足分析的需要。您的模型可能不够明确。
您是否在主题区域设置了隐式事实列以强制 F03 超过 F02?请注意,每个主题区域只能设置一个隐式事实列。
如果你真的想解决这个问题而不是解决它,你必须确保你的模型在使用哪个查询的事实方面是明确的。
另外:如果这是您的 BMM 层,那么一个建议是:使用正确的企业名称和名称!看到“CAL_DAY”之类的内容会让商业用户想知道他们是否面临着某种 1980 年代由相当过时的员工管理的技术;)
推荐阅读
- python - 如何选择合适的谷歌风格迁移模型?
- bash - 如何将 git log --pretty=format:%aN,%ae 转换为特定格式?
- r - 如何用 mapply R 函数填充矩阵?
- python - 即使使用 Selenium,我们也可以禁止 IP 吗?
- sql - 根据某些字段比较两行并在发现差异时标记它们
- java - 在java中使用绝对路径打开文件
- php - 安装apache2.4和PHP7.2.29后Apache无法解析PHP
- reactjs - 渲染 React.Suspense 子节点后测量 DOM
- python - 芹菜将并行任务链接成和弦
- c# - 关于使用 Selenium C# 启动 Chromium 浏览器