本文汇总了创建数据集的常见问题。
- 加工数据集字段问题
- 如何通过参数SQL实现占比的灵活运算?
- 如何通过参数SQL实现累计计算?
- 如何通过参数SQL实现输入单个日期,可以查询最近n天数据?
- 如何在创建仪表板时实现两个字段间的运算操作?
- 函数from_unixtime的返回值格式是什么?
- 如何解决函数from_unixtime的返回值为空?
- 创建新建字段时能否使用已创建的计算字段?
- 编辑计算字段(维度)时,出现“计算字段(维度)不能包含sum、avg、count、countd、min等聚合函数”错误。
- 编辑计算字段(度量)时,在文本类型字段中使用sum函数,预览时出现“任务执行失败错误”。
- 如何将Unix时间戳类型字段转化为标准日期时间类型字段?
- 如何删除从仪表板中导出的Null值?
- 数据集权限问题
- 数据集显示问题
- 数据集关联问题
如何通过参数SQL实现占比的灵活运算?
目前Quick BI是不支持直接计算占比的,您可以通过参数SQL创建数据集,实现占比的计算。
假设目前数据表结构为:日期(date)、省份(province)、城市(city)、销售额(order_amt)。您需要1、按城市维度汇总,计算占所属省份销售额的比值;2、日期可以选择任意区间,省份、城市可以多选。
select a.city,sum(fenzi)/sum(fenmu) as ratio
from
(select province,city,sum(order_amt) fenzi
from zhanbi_test
where ${date:date_para}
and ${province:province_para}
and ${city:city_para}
group by province,city
)a
left join
(select province,sum(order_amt) fenmu
from zhanbi_test
where ${date:date_para}
and ${province:province_para}
and ${city:city_para}
group by province
)b on a.province=b.province
上述SQL是以city字段聚合的示例,您也可以为其他字段做聚合。通过这种参数形式生成的SQL,还需要在数据集的参数设置中,将日期字段转换成日期类型后,就可以创建数据集,并仪表板中展示。
如何通过参数SQL实现累计计算?
DAY
字段才能配置,如下图所示。
select a.mon_date,avg(a.order_num) order_num,sum(b.order_num) add_num
from (
select date_format(report_date,'%Y/%m') mon_date,count(distinct order_id) order_num,max(date_format(report_date,'%Y/%m')) max_mon_date
from company_sales_record_copy
where ${report_date:month_date}
group by date_format(report_date,'%Y/%m')
)a
left join(
select date_format(report_date,'%Y/%m') mon_date,count(distinct order_id) order_num
from company_sales_record_copy
where ${report_date:month_date}
group by date_format(report_date,'%Y/%m')
)b on a.max_mon_date>=b.mon_date
group by a.mon_date
此时仪表板中,只要查询条件关联了参数字段,就可以通过筛选不同的月份区间,查询各个月份从起始月份开始,每个月的累计值。
如何通过参数SQL实现输入单个日期,可以查询最近n天数据?
select report_date,area,product_type,count(distinct order_id) order_num
from company_sales_record
where area in ('西南','西北','华北')
and (${dateadd(report_date,1,'dd'):date1}
or ${dateadd(report_date,2,'dd'):date1}
or ${dateadd(report_date,3,'dd'):date1})
group by area,product_type,report_date
如何在创建仪表板时实现两个字段间的运算操作?
在数据集中新建计算字段,请参见新建计算字段。
函数from_unixtime的返回值格式是什么?
函数from_unixtime的语法为FROM_UNIXTIME(unix_timestamp,format),返回值格式由参数Format决定。
如何解决函数from_unixtime的返回值为空?
- 根据需要设置参数Format的值。
- 创建计算字段时,指定返回值的数据类型为日期时间。
如何处理重新加载被删除的数据源后,表结构同步成功但数据同步依然失败的问题?
数据源被删除后,基于该数据源的数据集也将失效。您需要重新创建相关数据集。
如何将地理数据应用到地图图表中?
在数据集编辑页面,将地理数据通过维度类型切换功能转换为相应的地理信息。请参见编辑维度。
是否支持设置行级权限吗?
支持。请参见(旧版)行级权限。
数据集默认显示多少条数据?
默认显示100条数据。
数据集的数据支持分页吗?
不支持。
创建新建字段时能否使用已创建的计算字段?
不支持。
是否支持将云数据库的数据集切换到自建数据库?
不支持。
不同数据库间如何实现表关联?
专业版支持MaxCompute、MySQL、Oracle、AnalyticDB for MySQL 3.0和SqlServer跨源跨数据库进行表关联,其他版本暂不支持。
MaxCompute数据源同步表结构是否有延迟?
大约会延迟15分钟。
如何在数据集中添加已删除的维度或度量?
可在数据集编辑页面,单击同步表结构,可以将已删除的字段再同步过来。
如何将数据集复制到其他工作空间?
- 如果该数据集在个人空间下,不支持复制到其他空间。
- 如果该数据集在群空间下,通过数据集跨空间复制功能进行操作。请参见跨空间复制数据集。
如何将两个数据源中的数据应用于同一个交叉表中?
专业版支持MaxCompute、Oracle、MySQL、AnalyticDB for MySQL 3.0和SqlServer数据源跨源关联。您可以在数据集中跨源关联数据表后,再选择此数据集创建交叉表。请参见构建模型。
新建字段为何无法在右侧显示?

在数据库中修改某字段类型后,如何处理数据集该字段类型没有更新的问题?
在数据集中删除该字段,并同步表结构。
源物理表字段变更后如何更新下游的数据集模型?
可在数据集编辑页面,单击同步表结构,可以将更新的字段再同步过来。
编辑计算字段(维度)时,出现“计算字段(维度)不能包含sum、avg、count、countd、min等聚合函数”错误。
在数据集编辑页面的维度区域, 单击目标字段右侧的图标,选择转换为度量后,在转换后的度量字段上使用聚合函数。
编辑计算字段(度量)时,在文本类型字段中使用sum函数,预览时出现“任务执行失败错误”。
数据类型是文本类型时,度量字段不能使用sum聚合函数。新建计算度量字段时,需要根据源字段类型选择相应的函数。关于计算字段更多内容,请参见新建计算字段。
如何将Unix时间戳类型字段转化为标准日期时间类型字段?
- 在数据集编辑页面,按照图上步骤新建维度字段。
- 保存数据集,进行刷新如下。
如何删除从仪表板中导出的Null值?

- 在数据集编辑页面,按照图上步骤新建维度字段。
- 保存数据集,并基于该数据集新建仪表板并分析数据。
- 导出仪表板数据。
如何实现多表关联分析?
请参见构建模型。