gpt4 book ai didi

postgresql - 在 PostgreSQL 中设计 *PROMOCODE* 数据库模式时面临的问题

转载 作者:行者123 更新时间:2023-11-29 12:49:36 25 4
gpt4 key购买 nike

致力于新的应用程序数据库架构设计。在该应用程序中,有一个供用户使用的促销代码选项。我遇到了问题,或者我可能对设计促销代码表及其工作感到困惑。我创建了具有以下属性的表。

Restricted_Promos 表是仅针对特定用户的促销代码。

PromoCode:                                                         
name
description
status
valid_from
valid_til
discount
max_usage
created_at
created_by
updated_at
updated_by

Restricted_Promos:
PromoCodeId
UserId
Count

我遇到问题的场景是:

  • 多个用户如何使用一个促销代码?以及如何追踪他们喜欢谁使用过以及使用了多少次单一促销代码?
  • 如果促销代码是针对特定用户且仅供一次性使用的,如何应该在那管理?

  • 此促销代码架构是否灵活?就像将来如果我必须添加基于某些外部公司促销(如银行)的促销代码。它也适用于此吗?

最佳答案

我会将 Restricted_Promos 重命名为 Assigned_Promos。然后我会创建一个新表:

Promo_Usages:
PromoCodeId
UsedBy
UsedAt

现在您知道谁以及多少次使用了促销。

要管理最大使用次数,我建议在 Promo_Usages 上添加触发器并将 count(PromoCodeId)PromoCode.max_count 进行比较。顺便说一句,我强烈建议您使用一种命名约定。现在你正在混合几种。

这个模式已经足够好了。

关于postgresql - 在 PostgreSQL 中设计 *PROMOCODE* 数据库模式时面临的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57586021/

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