将工作量垂直分散到多行会增加 超越许多人横向分割工作量的性能 表???
table1(item_id,cat_id,note)
NOTE列将存储一个不断变化的非重复INT。
标准方式。
VS
table1(id,cat_id,item_1,item_2,item_3,... item_999)table2(table1_id,id,cat_id,item_1000,item_1001,item_1002,... item_1998)
...
table5000(table1_id,ID,CAT_ID,item_499000,item_499001,item_499002,... item_500000)
列本身将定义项目所在的每个类别
Row将定义该类别中的每个项目。
从上面注意:将被放置在相交的单元格中。
哪个更好?为什么?如果可能,链接
答案 0 :(得分:1)
Bytes per short string column 8,000
Bytes per GROUP BY, ORDER BY 8,060
Bytes per row 8,060
Columns per index key 16
Columns per foreign key 16
Columns per primary key 16
Columns per nonwide table 1,024
Columns per wide table 30,000
Columns per SELECT statement 4,096
Columns per INSERT statement 4096
Columns per UPDATE statement (Wide Tables) 4096
这是mysql的限制
When you combine varchar, nvarchar, varbinary, sql_variant, or CLR user-defined type columns that exceed 8,060 bytes per row, consider the following:
你正在构建实时应用程序吗?
你真的想过将关系划分为表吗?
你对酸属性有所了解吗?
您对数据库的想法是错误的
你只需要修改设计 我非常担心你的编码你将如何编码?
按照以下步骤操作
我有列的最大行数是100,这远远超出我的观点,因此我将这些列分为17个表
http://www.slideshare.net/ronaldbradford/top-20-design-tips-for-mysql-data-architects-presentation 查看此链接