首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在表中存储/检索数组的最佳方式

在表中存储/检索数组的最佳方式
EN

Stack Overflow用户
提问于 2009-04-17 16:37:04
回答 5查看 977关注 0票数 0

我目前在MySQL中有一个正常存储值的表,但是我想在该表中添加一个字段来存储一组值,比如cities。我应该简单地将该数组存储为CSV吗?每一行都需要它自己的数组,所以我对创建一个新的表并为前一个表中插入的每一行插入2-5行感到不安。

我觉得这种情况应该有个名字,我就是想不起来:)

编辑

元素数量- 2-5 (从动态城市列表中选择,数组引用列表,该列表是一个表)

这个字段不需要是可搜索的,只需与其他数据一起检索即可。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-04-17 16:41:44

“正确”的方法是使用另一个表来保存每个值,但由于您不想走这条路,因此应该使用分隔列表。只需确保您选择的分隔符不会出现在数据中。您还可以将数据存储为XML,这取决于您计划如何与数据交互,这可能是一种更好的方法。

票数 1
EN

Stack Overflow用户

发布于 2009-04-17 16:44:19

我建议使用包含逗号(或其他逻辑分隔符)分隔值的字段。只需确保您的字段足够大,可以容纳最大数组大小。然后,当您提取字段时,应该很容易使用分隔符对长字符串执行explode(),这将立即在代码中填充您的数组。

票数 1
EN

Stack Overflow用户

发布于 2009-04-17 16:44:07

也许你要找的词是"normalize“。与中一样,将数组移动到一个单独的表中,该表通过键链接到第一个表。这提供了几个优点:

在不使用“indefinitely

  • Efficient storage

  • Ability”的情况下,数组大小几乎可以增长,这样就可以在数组中搜索值。

当然,决定是否对此数据进行标准化取决于许多您没有提到的因素,比如元素的数量、数量是否固定、元素是否需要可搜索等等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/761170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档