0

我需要一些 SQL 帮助..

假设我有 2 个表:CustomersProducts.

现在,我想查看一条 SQL 语句,它将显示这两列:

Customer  |   Number of orders placed

我怎么做 ?

第二列是一个不存在的列,它显示了一个数字,该数字说明了客户下了多少订单。

例如:

Customer  | Number of orders placed
--------  | -----------------------
John      |              23
Jack      |               5
Mary      |              12

ETC ..

这种 select 的 SQL 是什么?

4

2 回答 2

0

加入。这只是组成您的列名,因为没有给出表格。

   SELECT 
        c.Name,
        myOrders = COUNT(o.id)
   FROM Customers c
   INNER JOIN Orders o
        ON c.id = o.customerId
   GROUP BY c.Name

一些快速阅读:JOINS通过...分组

于 2012-11-16T18:50:52.563 回答
0

我猜 Product 表包含一个引用客户的外键 CustomerID。结果查询将是

select Customers.Name, Count(*)
from   Customers join Products 
       on Customers.CustomerID = Products.CustomerID

然而,这只是一个猜测,因为您忘记告诉我们两个表之间的关系,即产品如何知道它们属于哪个客户。

另外,但这有点挑剔,您想要订单数量但只有一个“产品”表......

于 2012-11-16T18:51:14.760 回答