我有一个Products
表,它映射到一个桥接表,其中包含所述产品所包含的所有项目,因此产品 A 可以由多个项目或一个项目组成。(OTM)
长这样product_sub_item_bridge
,
+------------+----------------------------+ | 产品编号 | client_sub_product_item_id | +------------+----------------------------+ | 137 | 332 | | 138 | 333 | | 139 | 第334章 | 140 | 332 | | 140 | 335 | +------------+----------------------------+
因此,假设客户订购产品140,项目332和335将被插入到名为的表中,该表包含与订单的关系以及存储在表client_sub_products
中的项目本身。client_sub_product_items
我现在想做的是获取所有的,按idclient_sub_products
分组它们,client_order_id
并通过桥接表以某种方式将表连接到它上,这样我就可以获得一个包含,的列表由那些确切的. 像这样...GROUP_CONCAT()
Products
COUNT()
Products
client_sub_product_items
+--------------+----------+ | 产品名称 | 计数(产品名称) | +--------------+----------+ | 产品A | 15 | | 产品B | 25 | +--------------+----------+
这是我到目前为止所拥有的,
SELECT GROUP_CONCAT(`client_sub_products`.`client_sub_product_item_id`) FROM `client_sub_products` LEFT JOIN `client_sub_product_items` ON `client_sub_product_items`.`id` = `client_sub_products`.`client_sub_product_item_id` GROUP BY `client_sub_products`.`client_order_id` ORDER BY `client_sub_products`.`client_order_id` ASC;
我似乎无法通过桥接表,我不知道如何通过桥接表加入,因为有些产品与它相关的产品不止一个,我似乎在那里感到困惑client_sub_product_items
。Products
client_sub_product_item
我希望我已经充分解释了自己,而不仅仅是让每个人都感到困惑......如果我应该尝试澄清上述任何内容,请告诉我。