对表进行水平划分

本文探讨了当数据库表中记录数过多时的拆分策略,介绍了如何通过合理划分依据将大表拆分为多个小表,以提高检索效率,并以QQ登录为例进行了详细说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 如果一个表的记录数太多了,比如上千万条,经常需要检索,那么我们就有必要化整为零。如果我拆成100个表,那么每个表只有10万条数据,当然这血药在逻辑上可以分,一个好的划分依据,有利于数据的简实现,也可以充分利用水平分表的优势,比如系统界面上只提供按月查询的功能,那么把表差分成12个,每个查询只查询一个表就够了。如果非要按照地狱来分。即使表把拆分的在小,查询还是要联合所有的表来查询,还不如不拆了,所以一个好的拆分依据是重要的。


1.1我们使用qq登陆进行讲解

问题的提出和思路分析图

  当一个表的内存很大,比如10g,这个时候建索引已经没有用了,这不是索引的问题,而是机器已经抗不住了,在海量的数据里内存已经加载不进去了,我们有一个思想,

当一个表大的时候一定要搞成一个小表,怎么搞成一个小表呢?如下图所示,首先我们根据id进行分表,假如分成3个表,qq_menber0,qq_menber1,qq_menber2,第一个表是0有原因的,我们对3进行取于,结果只能是0,1,2,不多说了。。。。。。



 


1.2 创建数据库

(1)




(2)代码

  registerController.phh

 




用户登录:


总结:代码很简单,关键是思想。





评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值