回复:表越多越好,还是合并起来好
表越多越好,还是合并起来好
举个例子一个人才库,有如下几个表
1,个人基本信息表,包括id,person_id,name,sex,edu等
2,个人联系方式表,包括id,person_id,phone,email等
3,个人获得证书表,包括id,person_id,certi_name,class等
前两个表对于一个人来说都是唯一的,关联起来的是person_id,个人获奖表对于个人可以有若干项,关联起来的也是person_id
我的问题是:
是把个人基本信息表和联系方式表合并起来形成id,person_id,name,sex,edu,phone,email还是把他们分开存储成上面的形式,查询的时候效率高;
大家肯定一般会说肯定下面的高,但是如果表的列数很多呢,比如第一个表有40列,第二个表也有50个列,合并起来就是90个列左右,并且有300万个数据行,那么这个表肯定会很大,执行插入更新什么的会不会慢,这个问题哪位高人指点一下,谢谢啦
我的看法是把经常读写的部分分成一个table,不经常用的分成一个table
比如
user
username
password
user_profile
nickname
music
books
movie
经常读写的table mysql 会有cache 机制来cache
比如bss
经常要用的是username user_level,但是user sex user age 只有在查看user detail的时候才会读取 |