【发布时间】:2017-04-20 23:09:04
【问题描述】:
我在年/月提示表 A 和表 B。表 B 也有年/月列。表 A 是默认数据表(首先被拉入)。我在常见的年/月列上建立了表 A 和 B 之间的关系。
目标是让表 B 仅提取表 A 上年/月与年/月匹配的数据(用户输入的内容)。目的是防止用户多次输入年/月。
问题是表 B 包含近 3500 万条记录。我不想让 Spotfire 提取所有 3500 万条记录。当前发生的情况是 Spotfire 正在提取所有这些记录,然后通过将过滤设置为仅在表 B 上包含已过滤的行,我将可视化中看到的内容限制在 200,000 行以下。我宁愿从 200,000 行开始。
问题:有没有办法强制 Spotfire 通过另一个数据表(表 A)过滤数据表(表 B),因为它拉动数据表(表 B),因此只提取少量记录进入记忆?
【问题讨论】:
-
这在信息设计器中很容易完成。您的数据来源是什么(excel、oracle、sql server 等)
-
思科信息服务器(虚拟化数据)。但是我用两个不同的信息链接拉表 A 和 B(一个是过程,一个是表)。
-
啊...是的,我认为您不能将 proc 结果加入到表或视图中。 proc(和表)是按需数据还是加载到缓存中?
-
报表本身最终会被缓存。假设表 A 和 B 都是 Spotfire 的表。这将如何改变事情?我也许可以改变一些事情来实现这一点。
-
理想情况下我会在服务器上处理这个问题。我不熟悉 Cisco Info Server,在其他情况下,我会创建一个 proc,它从您的第一个 proc 中获取结果并将其连接到表数据中,并在此 proc 之外创建一个信息链接。因此,只有加入/有限的数据会返回到 spotfire。如果它们都是表,当您创建信息链接时,您可以加入这两个表并编辑 sql 以返回您关心的日期并加入表(当然是内部)以限制您的结果集。如果您愿意,我可以在答案中详细说明 - 它会变得冗长而详细。
标签: spotfire