这个sql语句好怪,请高手指点

zlxzm zlxzm 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
请教一个sql语句的问题_20051014

fw_khhfdb表1192132条记录,主键是djid,另外,对fwdwid字段建有一个索引,对hfrq 字段也建立了一个索引,在toad中执行以下语句:

SELECT COUNT (*)
FROM fw_khhfdb
WHERE fwdwid =559
AND hfrq >= TO_DATE ('2005-10-01', 'yyyy-MM-dd')
AND hfrq <= TO_DATE ('2005-10-13', 'yyyy-MM-dd')

很快得到结果:12548

但是执行以下各语句时,费时很久,跟死机一样:

SELECT COUNT (*)
FROM fw_khhfdb
WHERE (fwdwid =559 or fwdwid = 1119)
AND hfrq >= TO_DATE ('2005-10-01', 'yyyy-MM-dd')
AND hfrq <= TO_DATE ('2005-10-13', 'yyyy-MM-dd')

或者:

SELECT COUNT (*)
FROM fw_khhfdb
WHERE hfrq >= TO_DATE ('2005-10-01', 'yyyy-MM-dd')
AND hfrq <= TO_DATE ('2005-10-13', 'yyyy-MM-dd')
AND (fwdwid =559 or fwdwid = 1119)

或者:

SELECT COUNT (*)
FROM fw_khhfdb
WHERE HFFS = 1
AND fwdwid =559
AND hfrq >= TO_DATE ('2005-10-01', 'yyyy-MM-dd')
AND hfrq <= TO_DATE ('2005-10-13', 'yyyy-MM-dd')

其中,HFFS 是一个只有0、1两个值的字段,未单独建有索引。

请帮我分析一下,多谢!
...全文

相关推荐

评论 12
收藏 已收藏
分享
返回顶部
zlxzm
Oracle 高级技术 3,499 成员 18,710 内容