mysql-使用分组方式
我正在尝试为我正在为android开发的应用程序编写一个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
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语法。将在“接受”可用时接受此选项。