QlikView Direct Discovery - WHERE 子句

QlikView Direct Discovery - WHERE clause

我有一个关于 QlikView Direct Discovery (DD) 的问题。

我首先通过

导入整个数据库table以纪念QlikView
SQL SELECT `customer_id`, `customer`, `run_id` FROM `db_customer`.`qry_qlikview_customer`;

之后DD: 直接查询 维度 customer_id、run_id 测量 deal_id、type_id 细节 kri1, kri2, kri3 从 db_customer.qry_qlikview_direct_discovery;

run_id 代表一个日期,每个客户可以多次使用。

脚本 运行 没有任何错误并且 table 关系看起来很好,例如$Syn 1 = customer_id 和 run_id

但是,如果我select一个客户和一个run_id,QlikView告诉我直接发现不能运行通过。

在 ODBC 错误日志之外:

1497001997:SELECT customer_id, customer, run_id 来自 db_customer.qry_qlikview_customer; 1497001997:Using直接执行; 1497001998:query已执行; 1497001998:SELECT 不同 customer_id 来自 db_customer.qry_qlikview_direct_discovery; 1497001998:Using直接执行; 1497002100:query已执行; 1497002101:SELECT 不同 run_id 来自 db_customer.qry_qlikview_direct_discovery; 1497002101:Using直接执行; 1497002198:query已执行;

如果我将 run_id 的位置从 DIMENSION 更改为 MEASURE,dd 语句会返回结果。不幸的是,对于所有 run_id,而不仅仅是 selected 的。

任何人都可以提供帮助或有想法吗? 非常感谢你提前 最好的祝福 安德烈亚斯

在直接发现 table 上有一个合成键 $Syn 1 = customer_id and run_id 是一个已知的限制,Qlik 不支持这个。

在数据库 table 中创建一个新的关键字段,它是 customer_idrun_id 的连接,如 customer_id|run_id 并在 Qlik 中执行相同的操作,这样您就拥有了密钥作为 tables.

之间的单一连接