0

如何链接分销商和零售店关系的产品表?

有两个产品表。

一个是带有一些信息的所有产品表,另一个是带有附加信息的一些产品。

       distributor                     retailer 1
------------------------      --------------------
id  |  name  | expiredate       id  |  price | info
1                               1
2                               3
3

有很多零售商超过 100 张桌子。

我想要做的是零售商 1 打开产品页面。所有产品都将显示为复选框,并且将检查可用产品。

我可以用一个查询提取吗?

欢迎任何更好的方法来处理许多零售商。

4

2 回答 2

0

我知道了。我只使用了产品表和 product_retailer_bridge 表

SELECT product.*,  product_retailer_bridge.*  
(CASE WHEN product_retailer_bridge.`retailer_id`=1 THEN
product_retailer_bridge.`retailer_id` ELSE NULL END ) AS test 
FROM product LEFT JOIN product_retailer_bridge ON 
(product.`product_id` = product_retailer_bridge.`product_id`) 

或者

SELECT DISTINCT product.*, product_retailer_bridge.* FROM product LEFT JOIN
product_retailer_bridge ON product.`product_id`= product_retailer_bridge.`product_id`
AND product_retailer_bridge.`retailer_id`=1 GROUP BY product.`product_id`

谢谢你们。代码记入链接。感谢@logan、@Mark、@dianuj 和@klkvsk。

于 2013-08-31T14:36:13.973 回答
0

如果每个零售商可以有很多分销商并且每个分销商可以有很多零售商,那么您正在寻找一种many-to-many需要新表的关系

distributor_retailer
--------------------
distributor_retailer_id | retailer_id | distributer_id 
1                         1             1
2                         1             2
3                         2             1

在哪里retailer_iddistributor_idforeign keys到各自的表。

使用此数据,零售商 1 与分销商 1 和 2 打交道。零售商 2 与分销商 1 打交道。

你也可以反过来看。经销商 1 与零售商 1 和 2 打交道。经销商 2 也与零售商 1 打交道。

于 2013-08-30T16:37:54.690 回答