我必须构建的查询出现问题。有3张表,都是多对多,一个接一个。
Table Stores - id,store_name
Table Clients - id,store_id,client_name
Table Products - id,client_id,product_name
简而言之 - 可以从许多客户
处购买一种产品
。一个客户端
可以位于多个商店
中。
任务是获取所有商店
及其客户
数量(一个人是至少购买了一种产品的客户。如果client_id
未购买至少 1 个产品
- 他不是真正的客户
)。
最佳答案
SELECT store_name, COUNT(store_name)
FROM Stores s
INNER JOIN Clients c on (s.id = c.store_id )
INNER JOIN Products p on (c.id = p.client_id)
GROUP BY store_name
关于mysql - SQL 多对多对多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26562556/