社区
Oracle
帖子详情
oracle 中 一次查询大量的数据 10w或者百w级的,速度慢怎么解决?
捣鼓地瓜
2008-10-27 09:17:38
数据库中有近6 7百万数据,一次需要查询出几十万行数据的几个字段,每次查询都在100s左右,请问有什么好的优化措施可以提高效率?
无where条件全表查询 。
sql: select id,type,code from t
...全文
4962
20
打赏
收藏
oracle 中 一次查询大量的数据 10w或者百w级的,速度慢怎么解决?
数据库中有近6 7百万数据,一次需要查询出几十万行数据的几个字段,每次查询都在100s左右,请问有什么好的优化措施可以提高效率? 无where条件全表查询 。 sql: select id,type,code from t
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yulihua49
2009-02-04
打赏
举报
回复
[Quote=引用楼主 xu_long 的帖子:]
数据库中有近6 7百万数据,一次需要查询出几十万行数据的几个字段,每次查询都在100s左右,请问有什么好的优化措施可以提高效率?
无where条件全表查询 。
sql: select id,type,code from t
[/Quote]
你这个效率已然算是不错的了,如果需要优化,就提升硬件吧。
在数据库进行适当的表分区,让SQL并行从各分区提取数据。每个分区放在独立磁盘、独立通道的存储体。
yulihua49
2009-02-04
打赏
举报
回复
[Quote=引用楼主 xu_long 的帖子:]
数据库中有近6 7百万数据,一次需要查询出几十万行数据的几个字段,每次查询都在100s左右,请问有什么好的优化措施可以提高效率?
无where条件全表查询 。
sql: select id,type,code from t
[/Quote]
你这个效率已然算是不错的了,如果需要优化,就提升硬件吧。
在数据库进行适当的表分区,让SQL并行从各分区提取数据。每个分区放在独立磁盘、独立通道的存储体。
xugh
2009-02-02
打赏
举报
回复
要做什么操作呢?
magicbluestone
2009-01-24
打赏
举报
回复
这个主要看你的复合索引的是怎么建的,如果复合索引的第一字段条件的,是一个type这种的类型的话,这种粒度比较大的条件做的复合索引,在觉的这个种索引在查询的效率不高,还是分开独立建索引比较好的,复合索引里面对的查询条件的顺序有要求,这样在查询时只有按这个定式去查询,别的不走索引,效果会差
y22ang_cn
2008-12-24
打赏
举报
回复
可以分页显示,用FIRST_ROWS出来一部门解决一部分。
wyyl1
2008-12-23
打赏
举报
回复
1
伪造数据,想要多快就有多快!
xiaoyou1982
2008-10-29
打赏
举报
回复
实在没办法建分区了,不过我看你就这么点数据,好象也不需要建分区
codearts
2008-10-28
打赏
举报
回复
只能升级硬件了,或者修改一些sga,pga什么的,从sql角度上来看是没有办法再优化了
捣鼓地瓜
2008-10-28
打赏
举报
回复
一次取出全部数据的话 分页查询加循环快 还是 一次性取出快??
各位大侠
小弟跪谢了。。。。
捣鼓地瓜
2008-10-28
打赏
举报
回复
这个表有20个字段 查询的这三个字段已经建立了联合索引,
现在是在工具 比如sqlplus里面看plan的话 是index fast scan cost 576 rows 649k
但是项目用到的是ejb的映射, 在项目中取出数据的时间比较长 大约100s
现在的问题是 如何将项目中取得这些数据的时间缩短。。。
hl_ghost
2008-10-28
打赏
举报
回复
mark
leiru
2008-10-28
打赏
举报
回复
已经建立索引了,而且还没有where条件。
确实没什么方法优化了好像。。
看看其他高手的了
jdsnhan
2008-10-27
打赏
举报
回复
[Quote=引用楼主 xu_long 的帖子:]
数据库中有近6 7百万数据,一次需要查询出几十万行数据的几个字段,每次查询都在100s左右,请问有什么好的优化措施可以提高效率?
无where条件全表查询 。
sql: select id,type,code from t
[/Quote]
6 7 百万,查询出几十万,还无where条件。。。。这个逻辑。。。
wffffc
2008-10-27
打赏
举报
回复
这样的查询除了做数据导出,没有where条件,查出来也没有什么意义啊,不知道你们怎么用查出的数据?
wffffc
2008-10-27
打赏
举报
回复
如果表中字段很多的话,可以在id,type,code 上面建索引,这样查询的时候就不用全表扫描了,只要扫描这个组合索引就可以了。
要是字段就这几个的话,那就只能做应用软件的时候分页了,是用FIRST_ROWS提示试试,不然只能升级硬件了。
捣鼓地瓜
2008-10-27
打赏
举报
回复
[Quote=引用 1 楼 BlueskyWide 的回复:]
在id,type,code字段上建立索引。
引用楼主 xu_long 的帖子:
数据库中有近6 7百万数据,一次需要查询出几十万行数据的几个字段,每次查询都在100s左右,请问有什么好的优化措施可以提高效率?
无where条件全表查询 。
sql: select id,type,code from t
[/Quote]
where 子句没有条件索引起作用么?
还有就是 这个sql的话 建立联合索引还是单独建立索引啊?
捣鼓地瓜
2008-10-27
打赏
举报
回复
[Quote=引用 2 楼 hebo2005 的回复:]
分页查询
硬件升级
[/Quote]
就是要一次性的把数据都读出来
然后进行操作啊
捣鼓地瓜
2008-10-27
打赏
举报
回复
这些字段上已经有索引了啊
hebo2005
2008-10-27
打赏
举报
回复
分页查询
硬件升级
BlueskyWide
2008-10-27
打赏
举报
回复
在id,type,code字段上建立索引。
[Quote=引用楼主 xu_long 的帖子:]
数据库中有近6 7百万数据,一次需要查询出几十万行数据的几个字段,每次查询都在100s左右,请问有什么好的优化措施可以提高效率?
无where条件全表查询 。
sql: select id,type,code from t
[/Quote]
Oracle
数据
库order by排序
查询
分页比不分页还慢问题
解决
办法
Oracle
数据
库order by排序
查询
分页比不分页还慢问题
解决
办法
大
数据
分页
查询
速度慢
处理
需求:定时将
oracle
视图
中
数据
同步到mysql,再将
数据
生成sqlite.db进行下发
数据
量:800W 常规处理方式:使用分页
查询
oracle
中
表
数据
SQL: 处理慢原因:这个需要从rownum说起,因为rownum是一个伪列,对于返回
数据
的结果都是从1开始的,即我想查第100到200条记录,rownum标记会移动到200,
数据
量越大移动的就越多,这是导致
查询
慢的原因 优化...
一次
大事务回滚导致相关表
查询
速度异常的处理
问题: 某客户反映
查询
一张表速度上业务处理非常慢(count *查总行数也无法完成),之前正常,表大小几
百
M,正值年终盘点时刻,严重影响了业务,要求尽快排查处理;接反馈后第一反应
数据
库主机性能异常了,抓紧将主机资源消耗情况,
数据
库
中
的ACTIVE会话情况检查一遍,未见异常; 由于其它业务均正常,因此手动执行了相应表的COUNT
查询
动作,并进行执行计划、10046 TRACE分析及SQL执行时进程E...
oracle
is null效率,
Oracle
查询
优化之is null和is not null优化
最近工作的时候遇到了比较大的
数据
查询
,自己的sql在
数据
量小的时候没问题,在
数据
量达到300W的时候特别慢,只有自己优化sql了,以前没有优化过,所以记录下来自己的优化过程,本次是关于is null和is not null的优化。所用环境0racle11g。现有a表,a表
中
有字段b,我想查出a表
中
的b字段is null的
数据
。select*fromawherebisnull我在b字段上建立的索引...
left join 效率问题
问题:两张表关联
数据
库使用
oracle
,left join,第一张表30w条
数据
,第二张表300条
数据
,开始使用第一张表关联第二张表,
查询
20个字段信息,导致
oracle
崩溃。
解决
1: 使用右关联然后进行过滤,使查出来效果和左关联一样,但当
查询
字段信息在5个以下的时候可以正常查出,但是到第6个字段,
oracle
再次崩溃
解决
2: 将要关联的两个表信息进行update整合成一张表,然后查
Oracle
17,133
社区成员
55,258
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章