我有一个包含两个表的数据库。在一张桌子上,我用一栏显示了顾客的信息costumer_id
和costumer_name
列,我有一个带有客户订单的表,其中有order_id
和customer_id
列。该表如下所示:
客户:
+-------------+---------------+
| customer_id | customer_name |
+-------------+---------------+
| 1 | Joe |
| 2 | Michael |
| 3 | Ben |
+-------------+---------------+
订单:
+----------+-------------+
| order_id | customer_id |
+----------+-------------+
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
+----------+-------------+
我现在有以下查询,它向我提供了每个客户的订单量。结果由customer_id排序。
SELECT customer_id, COUNT(order_id) FROM Orders GROUP BY customer_id ORDER BY customer_id ASC;
现在,我希望通过查询从Customer表中的customer_name对结果进行排序。我该如何实现?
您可以使用联接
SELECT Orders.customer_id
, COUNT(orders.order_id)
FROM Orders
INNER JOIN Customers ON Customers.id = Orders.id
GROUP BY customer_id
ORDER BY Customers.customer_name ASC;