【问题标题】:How to count and group by at the same time in SQL? (Northwind)SQL中如何同时计数和分组? (北风)
【发布时间】:2020-12-13 19:57:35
【问题描述】:

我正在著名的“Northwind”数据库上学习 SQL。

这里是架构:https://miro.medium.com/max/4800/1*vluK_68f8_WnlL66qmRrXQ.png

我想返回有关“联合包裹”公司为其运送了至少 7 个包裹的客户的信息。所以我想数一数。

当我尝试这个时:

select c.CompanyName,
count(o.OrderID) as number_packages 

from Customers as c
join Orders as o 
on c.CustomerID = c.CustomerID

join Shippers as s
on o.ShipVia = s.ShipperID
where s.CompanyName like 'united package'
group by c.CompanyName;

它返回给我一张 CompanyName 正确的表格,并且在所有 326 行的 number_packages 中...所以我猜它是“United Package”运输的所有包裹的数量。

如何让它计算正确?

【问题讨论】:

    标签: sql northwind


    【解决方案1】:

    您的第一个join 条件不正确:

    from Customers c join
         Orders o 
         on c.CustomerID = c.CustomerID
    --------^ should be o
    

    【讨论】:

    • 哦,谢谢!有时我们需要额外的外观! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-19
    • 1970-01-01
    相关资源
    最近更新 更多