上云无忧 > 文档中心 > 百度智能云数据可视化Sugar BI SQL建模 - 数据自动补全
数据可视化Sugar BI
百度智能云数据可视化Sugar BI SQL建模 - 数据自动补全

文档简介:
数据自动补全是指Sugar BI将 SQL 查询出来的数据中空缺的数据自动填补上对应的值,自动补全可以自动填补零或补空(即null,对于折线图而言补空的效果是折线补空的地方无值,折线分成多段)。
*此产品及展示信息均由百度智能云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

数据自动补全是指Sugar BI将 SQL 查询出来的数据中空缺的数据自动填补上对应的值,自动补全可以自动填补零或补空(即null,对于折线图而言补空的效果是折线补空的地方无值,折线分成多段)。一个典型的使用场景是,例如用一条折线来展示本月 1 号到 30 号的数据,但是由于一些原因,数据库中缺失 5、6 号两天的数据,这时如果没有自动补全功能,折线图上就会完全忽略 5、6 号的数据,4 号之后就直接是 7 号,用户完全不知道缺失了两天的数据,这样对用户很不友好,这个时候自动补全功能就有用武之地了,它能将 5、6 号的数据补上 0 或者空,让用户在浏览折线图的时候能够一眼看出这两天数据缺失了。

Sugar BI中的折线图、柱状图、表格等一些图表在使用 SQL 方式绑定数据时,支持数据自动补全。自动补全有以下四种方式:

简单补全

简单补全是指补全查询结果中没有取值的列,例如您 select 了 id、pv 两个字段,但是有些数据行中 pv 字段没有取值即是null,这个时候如果你想把这些null值都展示为0,就可以使用简单补全。

按日期补全

在一些情况下,我们期望数据能够自动按照日期连续,对缺失日期的数据自动补上零或者空之类。

例如折线图展示多天的数据,但是由于一些原因,数据库中缺失了几天的数据,这时如果没有自动补全功能,折线图上就会完全忽略这些缺失的数据,用户完全不知道缺失了数据,这样对用户来说并不友好。因此Sugar BI提供了数据按照日期自动补全的功能。

需要注意的是,按日期补全需要图表绑定的 SQL 模型中有日期类型的字段。

原始的折线图效果:

按日期补零后效果:

按日期补空后效果:

按时间补全

按时间补全和上一节的按日期补全很类似,按日期补全的数据粒度是天,按时间补全的数据粒度可以让您自己选择(支持小时、半小时、10 分钟、1 分钟、10 秒等)。如果数据的开始和结尾不在某一天的 0 点或 24 点,可以选择「时间起点是 0 点」或「时间补全到 24 点」。

需要注意的是,按时间补全需要图表绑定的 SQL 模型中有时间类型的字段。

原始折线图效果:

按2小时粒度的时间补零的效果:

按数字序列补全

有时,数据库中保存的日期、小时或其他有序数据是使用数字序列标识的,比如:-2,-1,0,1,2,3.....。或者是前面有 0 的格式(如一天的 24 小时):00,01,02,03.....。 此时,如果你的数据中这个序列存在空缺(例如一天 24 小时,数据只有 0 点到 15 点的数据,但是用户想把 16 到 23 点的数据补成 0),这时可以选择「按数字序列补全」,补全数据的类型同样可以选择补空或者补零。

首先需要选择数字序列所在的字段,这个字段在 SQL 模型中的数据类型需要是整数或字符串。比如下图例子中选择了 info 字段。并且 info 在数据库中的数据内容如下:

如果在 SQL 模型中将 info 字段的数据类型设置为「整数」,则补全结果如下:

可以看到,虽然数据库中保存的是有补位格式的数字,由于数据类型设置为「整数」,前面的 0 被忽略了。

如果在 SQL 模型中将 info 字段的数据类型设置为「字符串」,则补全结果如下:

此时,Sugar BI会识别数字序列中的补位形式,并自动生成相同形式的补充数据。

这里需要注意,数据中的补位格式需要固定,如果有:01,2,03 这样的数据,会导致最终结果中补位形式的不统一

最后,通过配置「序列起始值」和「序列结束值」可以对数据补全的范围进行设定,范围外不会进行补全,但如果有数据还是会展示。

相似文档
  • 在实际的使用场景中,我们经常需要在 SQL 语句中嵌入一些where条件,并且这些where条件是根据用户的交互动态生成的。基于此,在Sugar BI中,我们已经支持了多种常用的「过滤条件」(日期、单选、多选等等),并且支持将这些过滤条件的取值动态嵌入到 SQL 模型的语句中,例如:
  • 下钻参数在哪里看? 对于下钻弹出的图表,最重要的就是如何知道下钻的参数有哪些?其实,在下钻弹出图表的右侧控制面板中「数据」下,单击「调试」,就能看到上层图表传递给本下钻图表的下钻参数。例如,一个饼图点击下钻弹出一个折线图:
  • 联动参数在哪里看? 对于联动的下级图表,最重要的就是如何知道联动的参数有哪些?其实,在联动的下级图表的右侧控制面板中「数据」下,单击「调试」,就能看到上层图表传递给本图表的联动参数。例如,一个饼图点击联动一个折线图:
  • Sugar BI中支持在 SQL 语句中嵌入当前登录用户的邮箱(使用这种方式,您就可以让不同的用户看到不同的数据),如下语法: 需要注意:如果您将大屏或报表页面进行了公开分享,并且页面中的某一个图表的 SQL 中使用上面的嵌入登录用户的邮箱,此时就会有问题,因为公开分享的页面是不需要用户登录Sugar BI账号就能直接浏览的,所以 SQL 就获取不到当前浏览的用户是谁,因此就会出错。
  • Sugar BI中支持在伪 SQL 中嵌入一些固定的日期宏定义,主要包含: {YEAR}表示当前年。 {MONTH}表示当前月。 {DAY}表示当前日。 {HOUR}表示当前小时。 {MINUTE}表示当前分钟。 {SECOND}表示当前秒。 {MONTH}、{DAY}、{HOUR}、{MINUTE}、{SECOND}支持(number)语法,将01转换成1。 {DATE}表示当前日期 格式如:2018-04-22。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部