mysql - 查询合并需要计数的结果
问题描述
问题陈述-
我有两个表“位置”和“访问”。在“位置”表中,我有关于城市、国家、邮政编码等的详细信息,在“访问”中,我有对“位置”表中提到的位置进行了多少次访问的详细信息。
以下是两个表的列值 -
位置表
ID|City Name|Country Name|Zip Code|
访问表
ID|Visit Date|Visit End Date|Visit Type|
问题-我想计算针对特定国家和特定访问类型的访问总数(基于访问表中访问类型列的值)。通常,通过获取访问表中的总行数并使用“ID”列作为连接它们的键,这将是直截了当的。除此之外,我希望结果显示如下 -
##结果
Country Name|Total no of Visits|
这就是让我陷入困境的原因。我不确定如何在此处获取国家/地区名称以及行的计数值。
解决方案
了解这ID
是连接两个表的共同属性,您可以使用简单的 group by 操作来完成...
select
[Country Name],
count(*)
from location l
join visit v
on l.id = v.id
group by [Country Name]
如果要按 and 拆分计数Country Name
,Visit Type
则必须将其添加到查询并按此字段分组,但输出不会像您描述的那样
select
[Country Name],
[Visit Type],
count(*)
from location l
join visit v
on l.id = v.id
group by [Country Name],[Visit Type]
推荐阅读
- angular - 如何监视茉莉花中使用 require() 带来的东西?或“从'place'导入*作为foo”
- javascript - 可以使用 store 作为组件数据的存储吗?
- android - 如何从另一个 Activity 中的 ListView 传递和检索领域结果?
- reactjs - React 嵌套表格组件
- java - 如何将图像从androids apk包文件夹复制到android设备的另一个文件夹
- python - 追加到上一行
- java - 在两个bean之间注入spring bean-实现相同的接口
- javascript - How to add cursor pointer to Chart.js datalabels plugin
- angular - 如何使用 Router 或 ActivatedRoute 从 url 获取参数
- dji-sdk - 错误:无法 catkin 构建 Onboard-SDK-ROS