-2

我有一个名为 orders 的表,我在其中存储有关用户订单的信息。

order_id    |   user_id |   amount
+++++++++++++++++++++++++++++++++++
1           |   1       |   100
2           |   1       |   200
3           |   2       |   200
4           |   3       |   100
5           |   3       |   100
6           |   4       |   500

我想要的最终结果是用户的订单数量和这些订单的总价值。

所以在上述情况下,输出应该是这样的,

user_id     |   count   |   sum
+++++++++++++++++++++++++++++++++++
1           |   2       |   300
2           |   1       |   200
3           |   3       |   600
4           |   1       |   500
4

1 回答 1

7

您在这里需要的是,GROUP BY就像COUNT这样SUM

SELECT
  user_id,
  COUNT(User_id) Count,
  SUM(amount) Sum
FROM Orders
GROUP BY user_id;

SQL 小提琴演示

这会给你:

| USER_ID | COUNT | SUM |
-------------------------
|       1 |     2 | 300 |
|       2 |     1 | 200 |
|       3 |     2 | 200 |
|       4 |     1 | 500 |
于 2012-12-30T11:05:06.177 回答