订单表包含订单列表以及每个订单的客户ID。并且不同的订单可以具有相同的客户ID,这意味着公司已经订购了多个订单(假设客户ID是公司的ID)。
公司名称来自客户表,我的目标是选择订单数超过X的公司名称。
现在,我的第一步是加入这两个表进行比较,然后我也可以选择公司名称,但我很困惑如何只选择超过X订单的公司。
到目前为止,我有这个,它为X发出的订单数量写出公司名称X次。
SELECT CompanyName
FROM Orders, Customers
WHERE Orders.CustomerID = Customers.CustomerID;
我如何才能获得比X订单更大的公司名称?我试过了 WHERE COUNT(CompanyName)> 3,但这只是错误。我认为我没有学到任何其他东西 如何量化从列中选择的方法。
答案 0 :(得分:2)
SELECT CompanyName
FROM Orders
JOIN Customers ON Orders.CustomerID = Customers.CustomerID
GROUP BY CompanyName
HAVING COUNT(CompanyName) > 3