日期:2014-05-16  浏览次数:20616 次

请问,Sql server 数据库中,多个结构相同的表如何关联查询
大家好,我想请问一下,我有一个大数据,以月创建数据库,例如DB2014-04,DB2014-05,然后在每个数据库中自动以天创建数据库表,例如Table2014-04-01,Table2014-05-05,表内的结果是相同的,每个表中存当天的数据,这样如果搜索数据时,需要把多个库的多个表的数据内容合起来显示,例如我从2014-04-01,查询到2014-05-05,我需要把两个库的35个表的数据合并显示,如何做呢?
O(∩_∩)O谢谢
------解决方案--------------------
和并显示不是不可以,不过这样做一次性要联结那么多库效率可能不高。
看楼主这数据库的设计想必每天的数据量都很大,那么抽取的数据应该是按天做集计显示的吧,如果是我猜想的这样,那楼主大可做一张统计表,预先统计好了直接查询出来。
------解决方案--------------------
如果表结构还未定型,
且每天记录数少于1千万条,建议改为 分区表 。。。。
否则,也尽量在一个库吧,只要库文件分布到多个磁盘

现在,如果程序查询,可以有程序根据日期范围,同时向多个表查询,结果再合并返回给用户
union后再查,无法使用索引,可能性能差很多

------解决方案--------------------
那就只能[数据库].[表]的方式uinon起来,如果跨服务器还得加上服务器别名
当然如果数据基本不变的话可以考虑用视图
------解决方案--------------------
引用:
Quote: 引用:

如果表结构还未定型,
且每天记录数少于1千万条,建议改为 分区表 。。。。
否则,也尽量在一个库吧,只要库文件分布到多个磁盘

现在,如果程序查询,可以有程序根据日期范围,同时向多个表查询,结果再合并返回给用户
union后再查,无法使用索引,可能性能差很多
你好,我问一下分区表查询效率会很快吗,我可以每天分一个区吗


sql2005只能 一个分区表最多100个区
不知道最新的sql2014最多能分多少个区