SQL中的聚合计数和总和
我有3个SQL表 表1: VIN 模型 颜色 83498 福特Fusion 黄的 233244 雷诺汽车 红色 2343 雷诺汽车 红色 您可以使用聚合--当然,在将表连接在一起之后:SQL中的聚合计数和总和,sql,Sql,我有3个SQL表 表1: VIN 模型 颜色 83498 福特Fusion 黄的 233244 雷诺汽车 红色 2343 雷诺汽车 红色 您可以使用聚合--当然,在将表连接在一起之后: select t1.model from table3 t3 join table2 t2 on t3.license_plate = t2.license_plate join table1 t1 on t2.vin = t1.vin group by t1.model
select t1.model
from table3 t3 join
table2 t2
on t3.license_plate = t2.license_plate join
table1 t1
on t2.vin = t1.vin
group by t1.model
having min(spot) <> max(spot);
选择t1.model
从表3开始
表2 t2
在t3上。车牌=t2。车牌连接
表1 t1
在t2.vin=t1.vin时
按t1.1模型分组
具有最小(点)最大(点);
您可以使用聚合——当然,在将表连接在一起之后:
select t1.model
from table3 t3 join
table2 t2
on t3.license_plate = t2.license_plate join
table1 t1
on t2.vin = t1.vin
group by t1.model
having min(spot) <> max(spot);
选择t1.model
从表3开始
表2 t2
在t3上。车牌=t2。车牌连接
表1 t1
在t2.vin=t1.vin时
按t1.1模型分组
具有最小(点)最大(点);
在SQL中,我们可以使用GROUP BY
创建结果集来聚合每个集合中的值,当您想要使用聚合函数限制组时,我们使用具有
来表示所需的过滤条件
第一步是构造一个查询,解析在每个点看到的模型:
SELECT t3.license_plate, t1.model, t3.Spot
FROM table3 t3
INNER JOIN table2 t2 ON t3.license_plate = t2.license_plate
INNER JOIN table1 t1 ON t2.vin = t1.vin
首先检查此原始结果集始终是一个好主意,为了确保正确表达联接,这将导致以下结果:
车牌
模型
斑点
ABC123
福特Fusion
1.
EDF567
雷诺汽车
1.
YEL898
雷诺汽车
2.
YEL898
雷诺汽车
4.
YEL898
雷诺汽车
5.
EDF567
雷诺汽车
2.
在SQL中,我们可以使用groupby
来创建结果集,以聚合每个集合中的值,当您想要使用聚合函数限制组时,我们使用HAVING
来表示所需的过滤条件
第一步是构造一个查询,解析在每个点看到的模型:
SELECT t3.license_plate, t1.model, t3.Spot
FROM table3 t3
INNER JOIN table2 t2 ON t3.license_plate = t2.license_plate
INNER JOIN table1 t1 ON t2.vin = t1.vin
首先检查此原始结果集始终是一个好主意,为了确保正确表达联接,这将导致以下结果:
车牌
模型
斑点
ABC123
福特Fusion
1.
EDF567
雷诺汽车
1.
YEL898
雷诺汽车
2.
YEL898
雷诺汽车
4.
YEL898
雷诺汽车
5.
EDF567
雷诺汽车
2.
此示例不可编译,列名与OPs请求不匹配,使用MIN()MAX()根本不是好的建议,Spot
表示一个离散位置(根据文章中使用的语言假设)OP希望知道在不同位置看到的模型,因此我们使用COUNT()
要计算车辆被看到的地点数量,您提供了一个低质量、只使用代码的答案,没有任何文档,OP询问一些如此基本的问题显然需要额外的建议。你最初的帖子显然误解了OP,你仍然建议比较MIN()MAX(),这是非常误导的。作为一个具有如此高代表性的人,你需要更加小心,人们会把你的答案当作福音,作为一个社区,我们对你的期望更高。这个示例不可编译,列名与OPs请求不匹配,使用MIN()MAX()根本不是好的建议,Spot
代表一个离散的位置(根据文章中使用的语言假设)OP想知道在不同地点看到的模型,所以我们使用COUNT()
要计算汽车出现的地点数量,您提供了一个低质量的、只使用代码的回答,没有任何文档,OP要求如此基本的东西显然需要额外的建议。您最初的帖子显然误解了OP,您仍然建议比较MIN()MAX()这是非常误导的。作为一个拥有如此高声望的人,你需要更加小心,人们会把你的答案当作福音,作为一个社区,我们对你的期望更高。