mysql 连表查询分组,详细过程和结果案例
时间: 2023-06-07 21:11:43 浏览: 78
当你执行多个表的连接查询时,通常需要在结果集上执行分组操作,以生成汇总信息。在 MySQL 中,可以使用 GROUP BY 子句来执行此操作。下面是一个连接两个表并对结果进行分组的查询示例:
SELECT
Orders.OrderID,
Customers.CustomerName,
SUM(OrderDetails.Quantity * OrderDetails.UnitPrice) AS Total
FROM
Customers
INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID
INNER JOIN OrderDetails ON Orders.OrderID = OrderDetails.OrderID
GROUP BY
Orders.OrderID,
Customers.CustomerName;
在此示例中,我们连接三个表Customers、Orders和OrderDetails,并使用INNER JOIN语句。我们选择订购ID、客户名称和订单详情数量和单价的总和,然后使用GROUP BY子句按订单ID和客户名称分组。
以下是一个示例结果集:
OrderID | CustomerName | Total
1 | Alfreds | $880.00
2 | Ana Trujillo | $1,300.00
3 | Antonio | $255.50
在这个结果集中,我们看到了每个订单的总金额,以及该订单所属的客户名称。