php统计数据库中的相同数据

php统计数据库中的相同数据,php,database,Php,Database,我的数据库: | order_detail_id | order_id | product_id | product_name | 1 | 1 | 20 | Polygon Fg56 | 2 | 2 | 20 | Polygon Fg56 | 3 | 2 | 20 | Polygon Fg56 | 4

我的数据库:

| order_detail_id | order_id | product_id | product_name 
|       1         |    1     |      20    | Polygon Fg56 
|       2         |    2     |      20    | Polygon Fg56 
|       3         |    2     |      20    | Polygon Fg56 
|       4         |    3     |      14    | fixie 11
我可以选择表,但我想计算在product_name列中有多少数据具有相同的值,例如,多边形Fg56有3条记录,修复11有1条记录。如何操作?

您可以尝试:

select
    `t`.`product_name`,
    count(`t`.`order_detail_id`) as `count`
from `table` as `t`
group by `t`.`product_name`
SELECT `product_name `, COUNT(`product_name `) AS cnt FROM `table` GROUP BY `product_name `;

在这里,您将获得每个产品有多少条记录(您也将获得该产品名称)

将产品名称添加到select中,否则它作为查询是非常无用的:)非常正确,进行了更改,但我也想获得名称,例如,如果我这样选择,这是唯一的返回整数上面编辑的例子会告诉你,最终我得到了它,只需在选择中添加产品名称,对不起。谢谢,基本问题可以通过谷歌轻松搜索,没有任何努力-1我下面的答案可以满足您的需要,但您应该认真研究数据的正常化。即,将产品id和名称移动到产品表中,并将订单加入其中。
select product_name,count(product_name)
from table
group by product_name