问题描述
- oracle11g 查询语句优化
-
求解:我有一条经常搜索的语句需要优化
select column1,column2||column3,column4,column5,column6,column7,column8,column9 from ( select * from table where column10=0 and (column11 is null or column11<=sysdate) and (column12=100 and (to_char(sysdate,'hh24')>='08' and to_char(sysdate,'hh24')<'12') or (to_char(sysdate,'hh24')>='14' and to_char(sysdate,'hh24')<'21')) ) order by column12 asc,column13 desc ) where rownum<100
应该怎么修改 或者添加什么的索引才能优化这条语句呢
现在的话在10W级别提取速度是零点几秒。
求各位大神知道
解决方案
把Column11改为非空,默认一个极小值(代替NULL),创建Column10,Column11,Column12,Column13的索引,没试过,第一感觉,
解决方案二:
不好意思这么久才回复,谢谢你了!
时间: 2024-10-02 23:05:54