如何在用户应用促销代码时设计订单历史记录表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在用户应用促销代码时设计订单历史记录表相关的知识,希望对你有一定的参考价值。

我正在开发一个用户将订购产品的项目。现在在数据库中我创建了一个包含以下列的orders表:

orderId, phone, address, total, subtotal, orderstatus, userid

在这个项目中也会有促销代码系统。我想知道,如果用户已经应用了一些促销代码,那么我该如何存储这些数据呢?我的意思是如何保存xyz promo code is applied by some user的数据。我应该在订单详细信息表中添加另一列。但在这种情况下,我想知道如果我们将提供用户促销代码仅持续一段时间,例如3个月,那么仅仅三个月我应该添加另一列可能导致内存浪费。

答案
you can add one more field in order table  <order_date> old data is a necessary for past order which promo code used in past no memory wastage.
order_detail_promocode
---------------------- 
order table like one order
----------------------
orderId = 111
phone   = 989898
address = testing
total   = 2000
subtotal = 2020
orderstatus = 1
userid = 123
order_date = 2019-04-19  (this new column use for users promo code only for some duration like for 3 months you can check current date.)

order_detail_promocode  (which users used prome code)
userid = 123
promo_code = xyz
order_id = 111
------------------
when user new order for xyz promo code check
promo_code && user_id if available inside the sub query and get the order_date and check like last 90 days.
另一答案

您可以添加映射表,而不是在订单表中添加新列。

表:order_promo_map列:order_id promo_id

但每当您检索数据时,都会有与之关联的加入成本。

以上是关于如何在用户应用促销代码时设计订单历史记录表的主要内容,如果未能解决你的问题,请参考以下文章

iOS - 我们如何通过促销代码为应用内购买提供折扣?

从一个片段移动到另一个片段时如何自动选择底部导航?

iOS 应用内购买的促销代码

用于从 cloudkit 检索单列的代码模式/片段

如何强制Margin-left(marginStart)在片段中成像?

django创建促销系统