gpt4 book ai didi

mysql - 具有相关列值的表的最佳数据库表设计

转载 作者:行者123 更新时间:2023-11-29 04:32:14 28 4
gpt4 key购买 nike

我想知道为相关列值设计表结构的最佳方法。

如果我遇到这样的场景

dbstructure

  1. 如果该字段的状态为 alive 则无事可做
  2. 如果状态为“死亡”,则以某种方式存储一些其他列值。

处理这种情况的最佳方法是什么

  1. 是否创建包含所有列的表,即“死于医院”、“死亡原因”、“死亡日期”和“请叙述事件”,并在状态为“活着”时将其设为空

  1. 使用单独的表来存储所有其他使用实体属性值 (EVA) 概念的属性

dbstructure

在上述场景中,体征和症状可能是单一的、多重的或其他有规范的。如何存储这个。 性能和查询的最佳方式是什么 要么在单个表中提供 15 列,如果没有值则存储 null,要么将症状的外键存储在另一个表中(在此策略中如何存储其他症状描述列)。

最佳答案

一般来说,如果您知道列是什么,就应该将它们包含在表中。因此,包含诸如 died_in_hospitalcause_of_death 等列的表似乎是一个合理的解决方案。

实体-属性-值模型在两种情况下很有用:

  1. 属性是未知的,随着时间的推移会添加新的属性。
  2. 属性的数量如此之大且填充稀疏,以至于大多数列都是 NULL

在您的情况下,您知道属性,因此您应该将它们作为列放入表中。

关于mysql - 具有相关列值的表的最佳数据库表设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58709734/

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