SQL 查询
1 概述
使用 SQL 查询可以实现自由编写 SQL 代码查询项目内所有数据,满足 TapDB 固有分析模型中无法满足的个性化取数、分析需求。
可从「分析」模块下的「SQL 查询」进入 SQL 查询功能,页面由语句「编写框」、「标签页」构成,其中标签页由「表结构」、「查询历史」、「语句书签」和「查询结果」构成。

2 适用角色与用途
| 角色 | 用途 |
|---|---|
| 管理员 / 分析师 | 了解项目当前数据资产。 |
| 分析师 | 自由编写 SQL 查询项目所有数据,满足 TapDB 固有分析模型中无法满足的个性化取数、分析需求。 |
| 业务人员 | 替换分析师 SQL 代码中的动态参数,满足持续取数、分析需求。 |
3 用表范围与注意事项
3.1 用表范围
在 TapDB SQL 查询功能中,可查询库表范围如下:
| 表 | 库名 | 表名 |
|---|---|---|
| 事件表 | tapdb | view_{{项目 ID}}_events |
| 设备表 | tapdb | view_{{项目 ID}}_devices |
| 用户表 | tapdb | view_{{项目 ID}}_users |
| 用户分群表 | tapdb | view_{{项目 ID}}_cluster |
| 维度属性表 | tapdb_dim | view_{{项目 ID}}_{{维度表名}} |
建议通过「数据表列表」中的「复制表名」功能,将复制该表的表名至剪切板后粘贴至语句编写框,详见本文 5.1.2 部分。
3.2 使用用户分群表的注意事项
所有用户分群数据均存储在同一张表 view_{{项目 ID}}_cluster 中。

可通过筛选分群名,并选择相应分群主体字段, 得到该分群下的用户 ID,如下:
分群主体为账号的分群:
select
user_id
from hive.tapdb.view_{{项目 ID}}_cluster
where cluster_name = ‘{{cluster_name}}’
分群主体为设备的分群:
select
device_id
from hive.tapdb.view_{{项目 ID}}_cluster
where cluster_name = ‘{{cluster_name}}’