gpt4 book ai didi

php - 简单的成员(member)数据库设计方法

转载 作者:搜寻专家 更新时间:2023-10-31 20:58:22 25 4
gpt4 key购买 nike

关闭。这个问题需要更多focused .它目前不接受答案。












想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .

3年前关闭。




Improve this question




我有点不确定什么是解决我对我的项目(Laravel API 和 Angular UI)的一个要求的最佳方法。所以我有一项非常简单的任务。我需要为成员创建数据库架构及其在选定年份的几个月内的订阅状态。

我需要尽可能简单,因为这是一个非常简单的管理应用程序,管理用户在支付时会手动标记每个成员的支付状态,所以这里没有什么特别或高级的。在 UI 上它应该是这样的:

enter image description here

所以基本上每年成员(member)都可以支付当年每个月的成员(member)费。

注:x 表示当月成员(member)付费成员(member)。

从数据库的角度来看,我正在思考并试图决定这样的事情:

注意:membership 和 another_membership 是我考虑使用的表,我会根据建议选择其中之一

enter image description here

所以基本上这背后的想法非常简单,每次成员(member)付款时,成员(member)表都会更新日期和成员(member) ID,这样我就会为每个成员(member)支付所有费用。

由于第一张图片的用户界面,我几乎不知道如何解决问题。

为了从第一张图像生成引导表,我在想类似的事情,例如,如果我想从某些选择中获得 2018 年的所有成员(member)资格,我将执行以下操作:

Select * from member m left join membership ms on m.id = ms.member_id where date >= 01-01-2018 and date <= 01-31-2018 and m.selection_id = 1

但我仍然不确定什么是映射成员每个月状态的最佳方式。我想也许可以将成员(member)表中的所有日期分组,然后以某种方式生成此表

有人对此有任何建议吗?我应该使用成员资格表还是 another_membership 表?我应该在 UI 或 API 方面做映射(成员和月份状态)吗?还有什么建议吗?有人告诉我,用 member_id、year 和所有 12 个月作为属性创建简单的表并只在那里存储每个月的真/假,这可能是一个“好”的主意。像这样的东西:

enter image description here

还有一件事困扰我,是不是最好先获取所有成员,然后根据成员 id 从成员资格表中获取所有数据,例如,如果我有 20 个成员的分页,我会像这样进行 db 调用:
  • 获取第 0 页 20 名成员
  • select * from membership m where m.member_id in (list_of_ids)
  • 最佳答案

    您不想在列中存储成员资格信息。要么membershipanother_membership很好——它们将值存储在行中。

    选择哪个?这真的取决于你。对于一般应用程序,我会选择以下内容:

  • MemberShipId
  • EffDate -- 从日期
  • EndDate -- 至今
  • 付款日期
  • . . .其他信息

  • 您的成员资格设置为一个月,因此可以使用单个日期(比如本月的第一天)或将列拆分为(年和月)。

    关于php - 简单的成员(member)数据库设计方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50367958/

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