gpt4 book ai didi

sql - 具有不同组合的产品和产品包的数据库模型

转载 作者:行者123 更新时间:2023-12-02 02:06:57 28 4
gpt4 key购买 nike

您将如何设计数据库以实现此功能?

考虑一个场景,我们要创建一个产品关系(包)...

假设我们创建了一个ProductTbl

prod_id   prod_name    prod_fee
1 prepaid-A 19 usd
2 prepaid-B 29 usd
3 prepaid-C 39 usd
4 internet 9 usd
5 mms 1 usd
6 email 3 usd

我们希望提供能为客户提供更优惠费用的产品包。

E.g. if customer choose prepaid-A + internet + mms they will have a pkg fee by 25 usd (instead of 29 usd).

设计

  • 具有相同组合的 pkg 应该只存在一次。
  • 如果可能,一个 pkg 可以包含无限数量的产品。 (通常是 2-4 个)。

例如pkg组合的

ProdPkgTbl

ppkg_id   prod_name    prod_fee
1 prepaid-A 25 usd
1 mms 25 usd
1 internet 25 usd

2 internet 10 usd
2 email 10 usd

3 prepaid-C 45 usd
3 internet 45 usd
3 mms 45 usd
3 email 45 usd

这意味着组合

  • pkgid 1 -> prepaid-a, mms, and internet for a pkg fee of 25 usd
  • pkgid 2 -> internet and email together for a fee of 10 usd
  • pkgid 3 -> prepaid-c, internet, mms, email all together for 45 usd

因此,如果客户获得了 prepaid-c + internet 只是他们没有获得 45 美元的交易,他们将支付 39 + 9 = 48 美元的正常费用。

现在这个表只是为了演示,我想听听你的意见和建议,以便在正确的方向上建模。

我们首先需要选择查询客户当前的费用计划(基于使用过的产品/服务),然后查看产品 pkg 并查看 pkg deal 是否对他们有效。

(如何做这样的选择?在pkg表上?)如何为此建立良好的数据库模型?

请提供 url、提示和任何有值(value)的建议,以将我推向正确的方向。

非常感谢。

最佳答案

您正在销售目录中的商品或服务。您也可以出售上述组合。这称为营销包(或 bundle 或组合)。

营销包也从目录中出售。它可以由商品、服务或其他营销包组成。

每个订单的价格确实不同。可以在good表中设置底价,在service表中设置包月价格,在marketing package表中设置底价。

enter image description here

关于sql - 具有不同组合的产品和产品包的数据库模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14527203/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com