|
|
1
1
节省空间?真的吗?当一个1兆字节的磁盘花费70美元时,你是在说节省字节? 也许你甚至没有保存字节。如果您将属性存储为“1223423342243234”,这就相当于3个属性的30个字节。如果您将它们存储为smallint,它们将占用6个字节。 |
|
2
0
例如,取决于属性对于以后的搜索是否重要。 如果只在一个字段中保留属性作为序列化数组,以防您实际上不关心它们,并且例如,您不需要运行查询来显示具有一个属性的所有产品,那么这可能很好。 但是,如果属性以逗号分隔(需要使用like),并且将属性存储为序列化数组,则查找具有一个属性的所有产品至少是“糟糕的”;如果将属性存储为序列化数组,则它们完全不可用于使用SQL查询的任何排序或分组。 如果产品和属性对于选择/分组/排序其他数据有任何重要性,那么对产品和属性之间的多个关系使用单独的表要好得多。 |
|
|
3
0
在 案例1 ,尽管您节省了空间,但在拆分字符串上还是花费了一些时间。 您还必须注意字段的大小:如果您有50个具有2个属性的产品和一个具有100个属性的产品,则必须将字段设置为~varchar(200)…你根本不会节省空间。 我想 案例2 是最好和推荐的解决方案。 |
|
|
4
0
您需要考虑将使用这些值的select语句。如果您希望搜索具有某些属性的记录,那么将它们存储在单独的列中并对它们进行索引会更有效。否则,您将执行“like”语句,这需要更长的时间来处理。 |
|
|
Bard.Mus · 迁移后的数据库字符集环境 1 年前 |
|
Efannnnnn · 将Id数据存储到任何页面 1 年前 |
|
|
yooooo · 用于在块中删除的存储过程-LOOP未执行 1 年前 |
|
John Beasley · 更新一定数量记录的连续日期 1 年前 |
|
|
ColinM · MySQL以前的结果查询返回不正确的值 1 年前 |
|
Sergey_Z · MySQL只需无条件连接2个表和交叉连接 1 年前 |