暂无图片
数据量大的表该怎么提升查询速度
我来答
分享
豆宇斯
2020-05-24
数据量大的表该怎么提升查询速度

有个按天分区的分区表,一个月有7千万左右数据,平均每天200万多,

我来答
添加附件
收藏
分享
问题补充
11条回答
默认
最新
刘峰

问题描述不够清楚,最好能给出具体的SQL示例

暂无图片 评论
暂无图片 有用 0
打赏 0
豆宇斯

。。。不知道为啥后面的没发上去

暂无图片 评论
暂无图片 有用 0
打赏 0
豆宇斯

按天分区的分区表,平均每天200多万数据,业务原因需要查询某时间段内数据量,查5月总数据量耗时15秒,但是查1月2日到1月5日需要18分钟

暂无图片 评论
暂无图片 有用 0
打赏 0
豆宇斯

语句是select count(*) from table t where date<=to_date('2020-01-05

23:59:59','yyyy-mm-dd hh24:mi:ss') and dcollectiondate>=to_date('2020-01-02 00:00:00','yyyy-mm-dd

hh24:mi:ss') ,索引是建在date上,查执行计划也走了索引

暂无图片 评论
暂无图片 有用 0
打赏 0
薛晓刚

Oracle还是MySQL?
统计信息是最新的吗?

暂无图片 评论
暂无图片 有用 0
打赏 0
豆宇斯

oracle数据库,Linux服务器,统计信息当时没有查

暂无图片 评论
暂无图片 有用 0
打赏 0
温君

不要使用count(*),看下是否可以考虑使用count(索引列)试下

暂无图片 评论
暂无图片 有用 0
打赏 0
文成

执行计划贴出来看看
猜测 dcollectiondate 没有索引,所以走的是 索引回表 单块读 所以慢
sql慢的问题 都要执行计划贴出来

暂无图片 评论
暂无图片 有用 0
打赏 0
helios

没执行计划说个毛线啊
执行计划,ASH,性能这2着手

暂无图片 评论
暂无图片 有用 0
打赏 0
莫得感情的萝卜头

可以参考下我分享的文档
https://www.modb.pro/doc/3096

暂无图片 评论
暂无图片 有用 0
打赏 0
田弼元

执行计划里面有没有回表?索引本身的碎片问题严重吗?

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
Oracle的undo回滚是将数据库“物理地”恢复到某个语句或事务之前的样子吗?
回答 1
已采纳
针对回滚,数据库只是“逻辑地”将数据恢复到原来的样子,某些修改会被“逻辑地”取消,数据结构以及数据库块本身在回滚后可能与事务或语句开始之前的数据块状态大不相同。原因在于:在所有多用户系统中,可能会有数
时间不一致
回答 5
回退不可取,是有风险的,把时间慢的那个节点向时间快的那个节点去对齐
物理备库数据库宕机
回答 3
刚看了memorytarget是62G,但是我的/shm是63G
Oracle:impdp时掉主键导致导入数据有重复记录?
回答 2
原表可能有重复记录,然后排除比较困难。用了延迟校验,只对后续数据加约束,之前的数据不验证。这种在11g的时候就有。导出可能会被误以为主键失效,其实不是的。
Oracle merge into 怎么看更新多少插入多少?
回答 4
学习
Oracle全面扫描一个几乎为空的散列聚簇表与全面扫描一个满的散列聚簇表所花的时间一样吗?
回答 1
已采纳
所花的时间是一样的。原因如下:散列聚簇索引表中的数据就是索引,没有物理索引。Oracle取得一行的键值,会使用内部函数或提供的方法计算其散列值,然后使用这个散列值得出数据应该在磁盘上的哪个位置,所以花
Oracle优化SQL需要看COST吗?
回答 4
已采纳
做SQL优化的时候根本不需要看Cost,因为Cost是根据统计信息、根据一些数学公式计算出来的。正是因为Cost是基于统计信息、基于数学公式计算出来的,那么一旦统计信息有误差、数学公式有缺陷,Cost
Oracle中临时表与实体表可以组合建一个视图表吗?
回答 2
可以的
PL/SQL是什么?
回答 1
已采纳
PL/SQL是一种程序设计语句,叫作过程化语言(ProceduralLanguage/SQL)。PL/SQL是Oracle对标准数据库语言SQL的过程化扩充,它将数据库技术和过程化程序设计语言联系起来
Varchar2 和 char 之间的主要区别是什么
回答 1
已采纳
oracle中char与varchar2的区别1.CHAR的长度是固定的,而VARCHAR2的长度是可以变化的,比如,存储字符串“abc&quot;,对于CHAR(20),表示你存储的字符将占20个字