MySQL-数据报表设计思路,统计查询
实现功能:数据报表统计。
实现描述:由于每天的数据量很大,因此想采用分表的模式 ,以天为单位一天生成一张表,从而实现数据的分流。
问题:请提供一种解决方案,可以让数据库实现自动分表,并且做到可根据日期段进行多表联合查询。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
实现功能:数据报表统计。
实现描述:由于每天的数据量很大,因此想采用分表的模式 ,以天为单位一天生成一张表,从而实现数据的分流。
问题:请提供一种解决方案,可以让数据库实现自动分表,并且做到可根据日期段进行多表联合查询。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
通过同义词。
例如,原设计表名是abc,创建表abc_20150406,通过同义词abc指向表abc_20150406。每天用定时任务在0点生成新表并把同义词指向新表,例如在2015年4月7日零时创建表abc_20150407,并重建同义词abc指向abc_20150407,这样在程序在插入数据的时候只要访问同义词abc就好。每天建表和重建同义词的操作可以通过定时任务在每天0点定时触发。
查询的话,只能根据日期去关联表了。
插入比较简单,根据日期找到对应的表就行了(没有就新建)
关键是查询,
首先你要知道查询条件里是否带有“日期”,
如果没有,那就只能挨个表查询了这个没有太多的办法
如果有日期,方式就比较多了--临时表、函数、子查询都是可以的。
仔细分析下查询条件,看还有没有可优化的地方