MySQL获取订单总数和用户总数

时间:2012-12-30 11:01:10

标签: mysql select group-by

我有一个名为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

1 个答案:

答案 0 :(得分:7)

这里你需要的是GROUP BY COUNTSUM如下:

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

SQL Fiddle Demo

这会给你:

| USER_ID | COUNT | SUM |
-------------------------
|       1 |     2 | 300 |
|       2 |     1 | 200 |
|       3 |     2 | 200 |
|       4 |     1 | 500 |