【发布时间】:2012-12-29 16:13:38
【问题描述】:
例如:
An item
{
size:23"
Resolution:1920*1080
Panel:IPS
}
(as in an usual table)
mysql 中的一个存储通常的方式是创建一个列名'size'等。但是,由于我关注的对中的第一项是不确定的(比如我希望用户能够输入数据,例如 producer:samsung;或用户想要输入的任何数据对)
有没有办法在 mysql 中优雅地做到这一点?也许是一个常见的分隔字符串?在任何情况下,我都希望这些数据能够轻松输出为表格,并可能进行搜索,例如获取 size=22" 的所有项目。
【问题讨论】:
-
你想要Entity-Attribute-Value 模型。
-
这听起来更像是“nosql”的情况。要么你有一个设定的模式(“大小”、“模型”等),要么你只有值。避免将逗号分隔的对放入 sql 列中。它会让你难过。
-
请更准确一点,我们将不胜感激有文档的示例,我知道您需要为同一列输入多个条目。
-
Hello ethrbunny 我也听说过不要将逗号分隔值放在 mysql 字段中,但在我看来,像 explode() 这样的函数可以很好地处理这个任务。这种方法的主要困难是什么?
-
@user1906418:然后将 json 放入文本字段。 Mysql 数据库在某个时间点甚至可能支持它。