Apache Kylin:多维数据集设置

时间:2016-08-18 09:15:07

标签: sql apache kylin

我在Apache Kylin(1.5.3)中创建了一个带有2个表格的立方体:

Facttable   || Dimensiontable
id_a | id_b ||  id  | pos
------------------------------
01   | 011  || 011  | 1
01   | 011  || 012  | 1
01   | 011  || 013  | 0
01   | 012  || 021  | 1
01   | 013  || 022  | 0
02   | 021  || 023  | 0
02   | 022  || 031  | 1
02   | 023  || 032  | 0
03   | 031  || 033  | 0
03   | 032  || 034  | 1
03   | 033  || 035  | 1
03   | 034  ||
03   | 034  ||
03   | 034  ||
03   | 035  ||
03   | 035  ||

这些表在facttable.id_b = dimensiontable.id上是联合的。 在'cube designer - advanced settings'中,我在'includes'中创建了一个id_a,id_b和pos的聚合组。

现在我想知道每个id_a,其中'pos = 1'不止一次与。

相关

所以对于上面的表格:

id_a | count
------------ 
01   | 2
03   | 3

在“洞察力”标签中,我尝试了查询

select ft.id_a, count(ft.id_a)
from(
    select id_a, id_b
    from facttable
    group by id_b, id_a
) as ft inner join (
    select id
    from dimensiontable
    where pos = 1
) as dt on (ft.id_a = dt.id)
group by ft.id_a
having (count(ft.id_a) > 1);

但它返回

  

执行SQL“[query]”时出错:null

有谁知道问题是什么?我是否需要更改“模型创建”或“多维数据集创建”中的某些设置?

感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

您的要求听起来就像我这样。

select
    id_a, count(distinct id_b)
from
    facttable
    inner join dimensiontable
    on facttable.id_b = dimensiontable.id
where
    pos = 1
group by
    id_a
having
    count(distinct id_b) > 1