【发布时间】:2023-04-04 00:08:01
【问题描述】:
假设我有表 Plan,其中包含列 PlanID、AccessID 和 AccessName。
如果我想计算Plan 表中包含AccessID 的计划数量,那么我可以这样做:
select AccessName, COUNT(AccessID)
from Plan
group by AccessID, AccessName;
这个的输出是:
介绍第二个表 Customer,其中包含 PlanID 和其他各种不相关的列。如果我想计算使用具有 TypeID 的计划的客户数量,我可以这样做:
select AccessName, Plan.AccessID, COUNT(AccessID) as AccessPop
from Plan
inner join Customer on Plan.PlanID = Customer.PlanID
group by Plan.AccessID, Plan.AccessName;
这个的输出是:
但是,如果我想在一个查询中同时执行这两项操作,我会遇到一个问题,即我无法计算使用 AccessID 并连接到客户表的计划的原始数量。
一些样本数据:
我的问题是如何将这两者结合到一个查询/选择中?
【问题讨论】:
-
使用
left join Customer而不是inner join。
标签: sql sql-server join