查询速度的讨论

[复制链接]
查看11 | 回复9 | 2007-7-4 17:27:50 | 显示全部楼层 |阅读模式
现在有这样一个问题
我现在有两个表 都是百万的数据 连个表的表结构是相同的,知识数据不一样而已。
我现在有一个查询,这个查询需要查询这两个表里面的数据
现在我想把这两个表合并成一个大表
但是我现在不知道 如果执行同样的sql语句 是执行两个小表的速度快呢 还是执行一个大表的时候快呢
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
执行两个表的得出的结果最后通过 union 合并之后和一个大表得到结果是一样的
我就是不知道效率是那个更高一点
我这个大表还没有合并所以不能实验
现在就是想通过大家的经验让大家讨论一下看看是那个更快
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
就你目前的这种情况,用一个大表肯定比把这个大表分成几个相同表结构的小表效率高!
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
原帖由 bell6248 于 2009-10-10 17:03 发表
就你目前的这种情况,用一个大表肯定比把这个大表分成几个相同表结构的小表效率高!



我是把给几个相同结构的小表合并成一个大表
反正都差不多
现在就是不知道那种效率更高一些
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
看具体的需求
一般来说,如果你要连接,肯定比不连接慢
总是单表查询快
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
那为啥不试试呢.用set autotrace trace exp,我记得好象这是可以不实际执行语句只看执行计划的方法...你还没有union这个大表应该只是怕费时间吧??
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
不好意思.语句写错了..set autotrace traceonly explain;
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
看你的业务规则了,如果仅仅只有这一个查询需要union这两张表的话还是分开的好
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
两个百万的表合成一个表查询起来应该比较快的
可以再优化一下
回复

使用道具 举报

千问 | 2007-7-4 17:27:50 | 显示全部楼层
我的测试记录
http://www.itpub.net/thread-1209477-1-1.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行