kylin3.1.x 执行SQL的常见错误 作者:马育民 • 2021-05-15 06:50 • 阅读:10100 # 说明 kylin在创建 Model、创建 cube时,构建表关系,并 **预计算** 的方式 **缓存了所有 需要查询的的数据结果** 所以执行 SQL 时,必须按照 Model、cube 编写 SQL,否则报错 # 关联条件与 Model相同 如下图中,创建 Model的条件是:`emp inner join dept on deptno = deptno` [![](https://www.malaoshi.top/upload/pic/kylin/Snipaste_2021-12-12_22-17-19.png)](https://www.malaoshi.top/upload/pic/kylin/Snipaste_2021-12-12_22-17-19.png) 所以,只能按照这个 **连接条件** 写 SQL, **不能改成:** `left join` **也不能调换 2 个表的顺序**,写成:`dept inner join emp` # 分组统计与 cube维度字段相同 创建 cube 时,选择维度字段如下: [![](https://www.malaoshi.top/upload/pic/kylin/Snipaste_2021-12-12_18-41-15.png)](https://www.malaoshi.top/upload/pic/kylin/Snipaste_2021-12-12_18-41-15.png) 所以,只能按照这几个字段做 `group by` 分组统计查询 # 统计方式与 cube度量值相同 创建 cube 时,定义下图 2个统计方式: [![](https://www.malaoshi.top/upload/pic/kylin/Snipaste_2021-12-12_19-19-38.png)](https://www.malaoshi.top/upload/pic/kylin/Snipaste_2021-12-12_19-19-38.png) 所以,编写SQL时,只能写这两个统计,即:`sum()`、`count()` 原文出处:http://malaoshi.top/show_1IX2PSIkPOOP.html