如何分析房子?

2021-08-16 10:21:27 浏览数 (2)

【面试题】

“房源表”是各个城市每天新增房源的名单,包括房源号、城市、录入时间。现在需要分析出每天每个城市有多少新增房源?

【解题思路】

1.如何拆解问题?

我们使用多维度拆解分析方法,来拆解一下问题:每天每个城市有多少新增房源

1)要求的维度:每天、每个城市

2)要求的数值:新增房源个数

所以这里是一个典型的分组汇总问题。将数据按照每天、每个城市的维度分组(group by),分组后对房源的个数进行汇总(count求房源号这一列有多少行)

2.如何分组?

按“每天”分组后如下图:

在第一步的基础上,按“每个城市”分组如下图:

这样就完成了从时间和城市两个维度的分组拆解,分组在SQL中用group by

3.如何汇总?

现在组已经分好了,我们只需要看每个分组中的房源号个数计数,就完成了分组计数。

计数在SQL中用count(计数字段)来表示,这里的count就是一种聚合函数,与分组函数group by常常搭配使用。

查询结果:

【本题考点】

1.当遇到“每个”问题,要想到《猴子 从零学会SQL》里讲过的用“汇总分析”解决

2.考查对聚合函数的了解,count的实际用法,常见的汇总函数如下

【举一反三】

房源表如下,找出每天每个城市的新增房源数大于1的城市、日期和新增房源数

参考答案:分组后对数据筛选用having子句

查询结果:

推荐:如何从零学会SQL?

0 人点赞