我需要存储一串逗号分隔值。
'1,23,47' or '1' or '' (null)
哪种数据类型最适合逗号分隔值?
注意:我只询问哪种数据类型适合此方案。
答案 0 :(得分:4)
取决于您期望的字符串大小决定varchar的大小。如果你不知道字符串有多长,你可以使用TEXT数据类型。
答案 1 :(得分:2)
字面答案:某种VARCHAR
更好的答案:不要存储逗号分隔值列表。每行存储一个值,并在访问数据库时使用带有GROUP_CONCAT的SELECT查询生成逗号分隔值。
答案 2 :(得分:2)
VARCHAR,它可以存储任何内容。
如果你觉得它很长,那就是文字。
答案 3 :(得分:1)
如果您永远不需要查询值列表中的特定子项,请使用varchar。但是,如果您需要查询值,我强烈建议您考虑使用不同的数据库设计,例如值表,其中每行包含主表的连接键和单个值。
答案 4 :(得分:0)
使用以下模板语法varchar(your maximum length)
(如
comment varchar(128)