使用Qlikview / QlikSense中的公共字段处理多个事实和多个实体表(MySQL)

时间:2016-10-13 15:36:11

标签: mysql qlikview circular-reference qliksense synthetic

我用这篇文章解决了我的事实表(Handling multiple fact tables in Qlikview)。但我有实体表的问题。我将使用这篇文章中的示例(Handling multiple fact tables in Qlikview)来解释我的问题:

test_scores_fact     |    enrollment_fact      |    school            |    gender         |   student
----------------     |    ---------------      |    ------            |    ------         |   ---
school_code (FK)     |    school_code (FK)     |    school_code (PK)  |    gender_id (PK) | student_id (PK)
test_code (FK)       |    grade_id (FK)        |    school_name (FK)  |    gender_desc    | school_code (FK)
grade_id (FK)        |    ethnicity_id (FK)    |    address           |    ...            | gender_id (FK)
gender_id (FK)       |    gender_id (FK)       |    ...               |
ethnicity_id (FK)    |    number_enrolled (F)  | 
student_id(FK)      |
test_score (F)       | 

在示例中,我添加了与学校表和geneder表有关系的student表。

我的问题:

我按照步骤操作,然后我在Qlik Sense中加载了我的sql表。我还为test_scores_face表创建了一个报告,其中包含一些过滤器(student_id,gender_id,...)。问题是,当我选择过滤器student_id时,报告无法按此过滤?我认为实体表(学校,性别,学生)中的问题是因为它们有共同的字段(如school_code,geneder_id)。这些常见字段产生循环引用。

为了避免这些循环引用,我必须为实体表做另一个链接表,或者将这些表与事实表的链接表相匹配?我厌倦了这两个解决方案,但我也无法通过student_id过滤!

我该如何处理这个问题?

1 个答案:

答案 0 :(得分:1)

您需要删除表之间的链接,我假设您手动编辑脚本?

如果链接

不需要该字段
  • 删除/重命名导致循环引用的字段

如果要求链接字段,请使用&'_'&

连接表格中的字段

这取决于您希望如何整理数据,但首先,我认为可以从注册事实表中删除成绩和性别作为开头,因为学生需要这样做。