我希望有人能就这个解决方案的最佳方法提出建议吗?

时间:2015-07-01 19:39:44

标签: php mysql database

我正在为我的客户更新网站。该网站有一个商店定位页面,该商店位置页面中有大约65,000个商店位置。它们都存储在storeLocation表中的MySql数据库中。

此功能效果很好,一切都很好,但是,我的客户希望能够让用户过滤哪些位置携带哪些产品的商店位置。

因此,我们总共有7种产品可用作过滤器。我正在考虑使用某种映射表,可能像一对一......一个商店位置可以容纳许多产品。我试图想一个快速的方法将locations表链接到新的映射表。

到目前为止,我提出的唯一解决方案是制作桌子,然后必须通过每个商店添加他们携带的产品。我希望能够查询某种具有商店订购的产品名称的订单历史表,这将允许我创建一个PHP脚本来链接表。然而,我没有找到这张桌子。

3 个答案:

答案 0 :(得分:0)

我只是想知道,订单历史不是'非常相关。即使商店订购了一件商品,也不是百分之百确定它还有库存。商店网站可以标记它是否在店内,但对于过滤器位置我不会考虑到这一点。如果商店有或有物品我会包括它。

答案 1 :(得分:0)

有地图表。
一个商店可以有多个产品。产品也可以属于多个商店 表结构:

产品
id,name,desc,status(enum active / inactive),...
商店
id,name,location,status(enum active / inactive)...
product_store
id,store_id,product_id,status(枚举活动/非活动),...
action_history
id,store_id,product_id,comments,timestamp,...

通过使用product_store表,您将能够找到商店到产品或产品的存储映射(可以有多对多......这将增加可扩展性)。
此外,您可以在将产品分配给商店时使用action_history表进行跟踪,反之亦然,只需在该表中添加该操作日志即可。

Inshort,
action_history将包含将产品分配到商店的操作日志。 和状态为有效的product_store将告诉您当前所有商品属于哪个商店。

答案 2 :(得分:0)

我不确定这是什么客户,但令我印象深刻的是65,000家商店带着他们的产品,赞誉!

我会做以下事情:

<强>存储

  • 65,000个商店条目,每个商店都有唯一的ID

<强>产品

  • 具有唯一ID和产品名称的7个独特产品条目

<强> store_products

  • 商店ID和一个或所有七个商品ID的65,000 - 455,000个条目