gpt4 book ai didi

mysql - 具有不同信息的数据集 - 单个表还是每组 1 个?

转载 作者:行者123 更新时间:2023-11-30 23:39:04 24 4
gpt4 key购买 nike

我和其他同学一起设计软件,允许用户上传有关某个区域的历史数据,然后根据其他列信息过滤该数据。每组数据的列信息可以完全不同。例如,我们有一个大型 CSV 文件,其中包含有关 1700 年代后期居住在费城的人们的信息,包括如下列:

Occupation, Widow, African, Address, Comments

地址是集合中唯一的公共(public)属性。

我认为我们应该为每个数据集创建一个新表,因为我们不知道 future 会有哪些列或会有多少列。明天有人可以上传有关养鸡户信息的文件,以及类似的栏目

Had chickens with brown eggs, Wheat, Address, Apples

我只知道我自学的内容,但后来其他同学告诉我,从哲学意义上讲,每套新 table 都是的。唯一的竞争设计是具有多个通用“属性”列的单个表,这些列与元信息/另一个描述属性的表保持分离。

我很难看出为每组创建一个新表的缺点,但我对 MySQL 的街头教育没有足够的信心来插入它的强大案例 -- 尤其是 如果有更好的方法。我只被告知它是反数据库的(虽然不是那些术语——我的队友很棒,我只是想理解。)

似乎使用单独的表可以让我们选择特定的数据类型(varchardatetime 等)并在运行之前将查询限制在相关数据上实际陈述。 另外,如果我们得到一个包含许多列的数据集,替代解决方案将需要新的通用列,即使之前/ future 的集合不再需要它。我(部分)理解他们这样做的理由,并认为它会奏效——但我无法看到看似更多工作的好处。

是否有“正确”的方法来做到这一点?

编辑:过滤最终用于使用 Google 的 Maps API 在 map 上绘制点。对地址进行地理编码的代码大部分已经完成。

最佳答案

您是要查询那些因数据集不同而不同的字段,还是只显示信息?如果只是为了显示,您可以将所有信息放在一个字段中。如果您需要查询它,这是个坏主意。在这种情况下,您也可以使用 EAV 表,我可能想知道关系数据库是否是此信息的最佳选择(地址信息除外)。我会为此调查一个无 sql 数据库。或者你可以为每种信息做一个表并加入它们。但是在这种情况下,我不确定它是否有效,因为您将拥有这么多,并且不知道要为任何一个查询加入哪个。

关于mysql - 具有不同信息的数据集 - 单个表还是每组 1 个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5034591/

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