PHP用MYSQL做数据库时,内容字段到底有没必要分表呢?

原创
2016-06-23 13:28:02 925浏览

比如有一个表里有个 id name content
那这个content我有没必要 经过一些处理
分散到10个表里去?

想知道如果分表 在多少量级别数量下 对比 才会有效率提升 或者根本没必要?


回复讨论(解决方案)

这个也不好说,以我个人的经验我会在其他10个表加这个表的id而不是content,一般情况id跟content相比占用的空间小些。
还有一点就是:id一般是唯一标示

主表 id name
分表有十个
id aid content 这里边的aid对应主表里的id 我是这种想法

没有必要!
即使是要分表,也不是你的这种分法

没必要把 如果要读取的话 还要到10个表里读取出来再拼?

没必要把 如果要读取的话 还要到10个表里读取出来再拼?



不是 是固定的
文章表是 content : id cid title
栏目表是 channel: id cid name
然后不同栏目对应不同的 分表 比如 contet01 content02 content03 字段是 id aid content

比如 我要找文章ID为2 的 内容
那需要先找到,ID为2属于栏目几,比如ID为2的文章 属于栏目3
栏目3对应 的内容表是 content03

那程序就直接从 content03 中找 aid = 2 的 content字段值

那程序就直接从 content03 中找 aid = 2 的 content字段值 ????
这可能吗?

那程序就直接从 content03 中找 aid = 2 的 content字段值 ????
这可能吗?



不是 程序如果要找aid=2的 内容,首先在 aid=2的 文章表中 找到 对应的栏目ID 比如是栏目3
然后 栏目3中,有设定,所有归于栏目3的内容 都在 content03表里

然后,程序就去03表里找aid=2的 content值 并输出啦

中间是由栏目表做指定中转的

不是自找麻烦吗?

不是自找麻烦吗?



以前我在用ASP的一款CMS时 它是这样设计的 用的是access数据库 分表 以让数据多时 可以效率高一些

但我不知道mysql里这样分的话 到底有没意义了 所以这里问下大家啊

分表也不是你说的那种分法,如果有1千个栏目,岂不是要加1千个表?

完全没有必要把文章分表和栏目表弄在一起。
如果文章要分表,可以使用文章id来分表。
例如文章的id%10 会得到 0,1,2,3,4,5,6,7,8,9,这几个就是分表的表名。
可以根据id来判断内容在哪个分表。

例如要找id=2的文章内容。可以用$id%10 得出 2,然后直接在content02中读取内容。

没有必要!
即使是要分表,也不是你的这种分法



有必要这样做吗?
文章
id title 描述 (原谅我英语不好,想不起来了)
内容
id content
有必要分开吗? char int 等一些是定长的字段 和 nvarchar text 等自动分表?
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。