社区
Oracle
帖子详情
oracle select count(*) 很慢
lyvscf
2009-12-08 01:32:35
oracle select count(*) 很慢 表中大楷有1千万条数据 我想得到 记录数 有没有好的方法优化 请赐教
...全文
2010
16
打赏
收藏
oracle select count(*) 很慢
oracle select count(*) 很慢 表中大楷有1千万条数据 我想得到 记录数 有没有好的方法优化 请赐教
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lyvscf
2009-12-10
打赏
举报
回复
真的没有办法了!? 哎! 我不管是count(*) count(索引) count(主键) 还是 count(rowid)
都是用了 5 、6秒 哎 这种效率怎么能行!?
myl525
2009-12-09
打赏
举报
回复
count(*) 比count(1) 要快,
理论上count(索引列) 更快
但是实践证明 这三种方法 没有明显性能差别
《ORACLE语句优化规则汇总》里讲的
tianyazlf
2009-12-08
打赏
举报
回复
count(1), sum(1), count(rowid)
感觉速度应该都比count(*)快,没试过,猜的。
谁测试了,发下具体性能。
碧水幽幽泉
2009-12-08
打赏
举报
回复
count(rowid)要快些!
huangdh12
2009-12-08
打赏
举报
回复
select count(1) 吧。。
shiyiwan
2009-12-08
打赏
举报
回复
2楼的做法是比较好的
借楼主的帖子问个问题,
如果是联合主键,且联合主键中某一列字段可以为null,那么查询表中记录总数又该如何?
zhaoyhdev
2009-12-08
打赏
举报
回复
Sum(1) 最快了、
gxjwqm
2009-12-08
打赏
举报
回复
count(rowid)
Richard345265669
2009-12-08
打赏
举报
回复
count(rowid)这是最快的方式了
lixinbill
2009-12-08
打赏
举报
回复
count(rowid)这是最快的方式了
Phoenix_99
2009-12-08
打赏
举报
回复
count(rowid)
qq82296344
2009-12-08
打赏
举报
回复
[Quote=引用 3 楼 crazylaa 的回复:]
count(rowid)据说最快,不知道了。
[/Quote]
是啊 有人测试过。
Dave
2009-12-08
打赏
举报
回复
[Quote=引用 2 楼 hyrongg 的回复:]
语句上还能怎么优化?很多讨论count(*)和count(1)效率问题,都差不多
楼主的表如果有一个非空的主键,试试 count(主键) 看看效果如何
[/Quote]
还与服务器性能也有点关系..
------------------------------------------------------------------------------
Blog
: http://blog.csdn.net/tianlesoftware
网上资源
: http://tianlesoftware.download.csdn.net
相关视频
:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
Q Q 群:62697716
crazylaa
2009-12-08
打赏
举报
回复
count(rowid)据说最快,不知道了。
hyrongg
2009-12-08
打赏
举报
回复
语句上还能怎么优化?很多讨论count(*)和count(1)效率问题,都差不多
楼主的表如果有一个非空的主键,试试 count(主键) 看看效果如何
bzcnc
2009-12-08
打赏
举报
回复
SELECT COUNT(主键) 速度稍微快一些,即使不使用主键,设置某个具体的字段,应该也快
oracle
select
count
慢,
select
count
(*) from v$lock 查询慢
描述:
select
count
(*) from v$lock 查询慢 解决方法,具体原因看官方优化文档哈SQL> set time on00:51:52 SQL>
select
count
(*) from v$lock;
COUNT
(*)----------35--需要十几秒才能返回结果。00:55:10 SQL>...
oracle
select
速度,sql –
Oracle
11g – 为什么
SELECT
COUNT
(*)比
SELECT
*慢得多?
SELECT
COUNT
(*) AS ROW_
COUNT
FROM CATATWHERE CATAT.ID = 1007642AND CATAT.IS_PARENT = 1AND EXISTS(
SELECT
1 FROM CG WHERE CG.C_ID = CATAT.ID AND EXISTS(
SELECT
1 FROM CCSD WHERE CCSD.G_ID = ...
select
count
(*) 速度慢的原因主要有什么?
情景:一个表里面数据有2400多行,执行
select
count
(*)竟然需要8秒多; 把这个表的索引删除...想来想去造成速度慢的原因可能是:这点数据分布在不同的块上,所以执行
count
(*)的时候速度极慢。 说法1:执行计划如果
oracle
查询
count
很慢
oracle
查询
count
很慢
Oracle
count
时响应速度慢
但当where条件中含有某一个参数时会导致
select
count
(1) 的速度非常慢,需要140s以上;
select
*响应速度正常。且仅在生产环境会出现该问题,测试环境仍然只需要100ms左右。该问题导致了页面会卡死,若反复执行带有该...
Oracle
17,086
社区成员
55,238
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章