Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql-使用分组方式_Mysql_Sql_Group By - Fatal编程技术网

mysql-使用分组方式

mysql-使用分组方式,mysql,sql,group-by,Mysql,Sql,Group By,我正在尝试为我正在为android开发的应用程序编写一个mysql查询 我有一个数据库,它有一个bill\u content表和一个products表 我想选择最畅销的十大产品 这是我所拥有的一个最小版本,但这是我在这里得到答案所需要的全部 bill\u content表中有以下列:id、id\u product、quantity(此处的id\u product和quantity可以重复,因为此表较大,包含id\u bill和其他信息) products表中有以下列:id,name SELECT

我正在尝试为我正在为android开发的应用程序编写一个mysql查询

我有一个数据库,它有一个
bill\u content
表和一个
products
表 我想选择最畅销的十大产品

这是我所拥有的一个最小版本,但这是我在这里得到答案所需要的全部

bill\u content
表中有以下列:
id
id\u product
quantity
(此处的id\u product和quantity可以重复,因为此表较大,包含id\u bill和其他信息)

products
表中有以下列:
id
name

SELECT products.name AS Product,
       bill_content.quantity AS Quantity

FROM bill_content, products
WHERE bill_content.id = products.id
ORDER BY bill_content.quantity DESC
LIMIT 10
当然,这将返回一个由两行组成的表,其中包含
bill\u content
表中的所有产品及其数量,但其中有重复项,我需要对它们的数量求和,并将它们显示为一行

先谢谢你

回答
这可以使用Gordon Linoff所说的
分组方式来完成。

你想要一个
分组方式。您还应该学会使用正确的显式
join
语法:

SELECT p.name AS Product,
       SUM(bc.quantity) AS Quantity
FROM bill_content bc JOIN
     products p
     ON bc.id = p.id
GROUP BY p.name
ORDER BY SUM(bc.quantity) DESC
LIMIT 10;

您需要一个
分组依据
。您还应该学会使用正确的显式
join
语法:

SELECT p.name AS Product,
       SUM(bc.quantity) AS Quantity
FROM bill_content bc JOIN
     products p
     ON bc.id = p.id
GROUP BY p.name
ORDER BY SUM(bc.quantity) DESC
LIMIT 10;

您需要一个
分组依据
。您还应该学会使用正确的显式
join
语法:

SELECT p.name AS Product,
       SUM(bc.quantity) AS Quantity
FROM bill_content bc JOIN
     products p
     ON bc.id = p.id
GROUP BY p.name
ORDER BY SUM(bc.quantity) DESC
LIMIT 10;

您需要一个
分组依据
。您还应该学会使用正确的显式
join
语法:

SELECT p.name AS Product,
       SUM(bc.quantity) AS Quantity
FROM bill_content bc JOIN
     products p
     ON bc.id = p.id
GROUP BY p.name
ORDER BY SUM(bc.quantity) DESC
LIMIT 10;

谢谢,我也使用了连接语法。当accept可用时将接受此选项。谢谢,我也使用了JOIN语法。当accept可用时将接受此选项。谢谢,我也使用了JOIN语法。当accept可用时将接受此选项。谢谢,我也使用了JOIN语法。将在“接受”可用时接受此选项。