【魄爺】 发表于 2018-10-17 08:29:56

如何在Excel中进行类似SQL的查询

  最近在做开放平台访问成功率数据分析的事情,由于成功率的报表都是直接用Excel导出的,一种方式把Excel数据导入MySQL,另外一种方式直接使用Excel的数据库函数。
  下图中,绿色部分的数据源,橙色部分是计算结果,我们的需求是这样的(以数据源为基础):

[*]计算 “应用Tag=1 ” 应用成功访问总量的合计;   
[*]计算 “应用Tag=1 ” 应用有效访问总量的合计;   
[*]计算“应用Tag=1 ” 的 访问成功率 = 应用成功访问总量的合计/应用有效访问总量的合计; 先看应用Tag=1 的 应用成功访问总量合计 是如何计算的 ?这时候Excel的数据库函数DSUM开始发挥他巨大的作用。让我们一起看下C4的公式吧
C4公式为:DSUM($B$7:$E$26,”应用成功访问总量",C2:C3)
$B$7:$E$26 是构成需要计算的数据库(假定我们称之 report table);
  “应用成功访问总量” 是 数据库要进行SUM计算的列 ;
  C2:C3 是 指定条件的区域;
  如果用SQL来描述的话:select sum(应用成功访问总量) from report_table where 应用Tag=1
  C5就不具体介绍了,最后C6 = C4/C5 ,得到了我想要的访问成功率,这样就在不借助数据库的情况下完成了SQL语句的查询,蛮酷的吧。顺便说一下,Excel的数据库函数还包括DCOUNT,DGET,DPRODUCT等等,大家可以慢慢研究,不过基本用法都是一致的。


页: [1]
查看完整版本: 如何在Excel中进行类似SQL的查询