计算相同的order_id并输出SQL中的数量

时间:2011-10-25 21:40:18

标签: mysql sql

我想计算表refnumbers

中相同order_id的行数

所以它应该输出:

There's 5 rows with the order_id 123

There's 9 rows with the order_id 124

There's 18 rows with the order_id 125

There's 2 rows with the order_id 77

它应该在表order_is

之后反击的列refnumbers

我真的不知道如何在没有特别提及order_id的情况下执行此操作,然后在php中循环执行它们。

1 个答案:

答案 0 :(得分:4)

您需要在要获取计数的列上使用group by

这不起作用

SELECT count(*) as rowcount
FROM refnumbers

将为您提供包含所有行计数的单行

按不同的order_id计算

SELECT order_id, count(*) as rowcount
FROM refnumbers
GROUP BY order_id /*WITH ROLLUP*/
ORDER BY order_id

会根据不同的order_id给你计数 如果您想获得总计数,请取消注释with rollup部分。