实验内容:
本实验的数据来自一家大型的石油气配送企业,业务区域涵盖湖北省内大部分城市。
每日的销售额大概在200万,产生数万条销售数据,订单类型主要是13公斤,50公斤,5公斤的石油气销售数据。
本次实验主要实现以下2个功能:
使用柱状图显示湖北省各城市的销售额;
使用饼状图显示各分类产品下的订单总金额。
实验思路:
进入DataWorks上传从MySQL数据导出的CSV文件;
通过DataWorks对结果数据进行渲染实现数据可视化展示。
实验目的:
1、 掌握使用DataWorks的数据上传功能
2、 掌握使用SQL查询筛选数据的功能
3、 掌握DataWorks的数据可视化中柱状图,条形图,饼形图的使用方法
4、 掌握DataWorks的电子表格的使用方法
实验步骤:
下载CSV文件(模拟本地文件)
https://university-labfileapp.oss-cn-hangzhou.aliyuncs.com/%E5%AE%8F%E9%B9%8F--%E5%A4%A7%E6%95%B0%E6%8D%AEACA/orderutf8.csv
进入到DataWorks工作空间(具体进入方式见https://developer.aliyun.com/article/1341783?spm=a2c6h.13148508.setting.15.25274f0eQ8JVET)
进入上传数据页面
点击【提交】按钮上传数据
把数据集添加到MaxCompute
添加成功
右键点击【order】表名并选择【生产SQL】会默认生成SQL代码,选中SQL语句,点击左侧的运行图标可以运行SQL
在下方出现查询出的结果数据
筛选各城市的总销售额
通过SQL筛选出各个城市的总销售额,例如分别统计出襄阳市,十堰市,武汉市等城市的对应的每个城市的总销售额
SELECT a.city,(select SUM(price)
from u_tlck91ct_1669278366.order
where city = a.city) as totalprice
FROM u_tlck91ct_1669278366.order as a
where a.city != ''
GROUP by a.city
LIMIT 200
;
对结果进行排序,再按销售额从大到小排列
SELECT a.city, (select SUM(price)
from u_tlck91ct_1669278366.order
where city = a.city) as totalprice
FROM u_tlck91ct_1669278366.order as a
where a.city != ''
GROUP by a.city
ORDER by totalprice DESC
LIMIT 200;
使用DataWorks的柱状图组件来渲染SQL返回数据
点击【分组柱状图】
使用饼状图显示各分类产品下的订单金额
使用饼状图显示各分类产品下的下单总金额,需要先使用SQL筛选出响应的数据。
SELECT a.type,(select SUM(price)
from u_tlck91ct_1669278366.order
where type = a.type) as totalprice
FROM u_tlck91ct_1669278366.order as a
where a.city != ''
GROUP by a.type
ORDER by totalprice DESC
LIMIT 10000
;
使用饼形图对SQL查询返回的数据进行渲染,可以很直观查看订单结果,以及对数据进行比对。
实验总结:
通过本次实验将石油气配送公司的订单数据上传至云端,并对数据进行了SQL查询筛选,最后通过数据可视化组件进行渲染。
我们可以学到如果使用SQL对数据进行筛选得到我们想要的结果,其中包括了SQL的SELECT(查询)、GROUP BY(分组去重)、ORDER BY(排序)、AS(结果赋值)。
这些SQL语法在以后的实际项目中经常被用到,大家可以多多练习。
通过对SQL查询返回的数据进行数据可视化处理,我们体验到了DataWorks的数据可视化的强大功能,将繁琐、枯燥无味的数据用图形组件展示,可以很直观的查看数据结果,并对结果进行比对。