ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 绑定变量的问题

绑定变量的问题

原创 Linux操作系统 作者:wojiaoao 时间:2008-07-15 09:41:33 0 删除 编辑
程序里面有一个查询,使用了绑定变量,如下:
select *
              FROM t_res_flt b
              WHERE  b.fltdate >= to_date(:1, 'YYYY-MM-DD')
                AND b.fltdate <= to_date(:2, 'YYYY-MM-DD')
                AND b.carrier = :3
                AND b.depapt = :4
                AND b.arvapt = :5

t_res_flt 表有时间索引fltdate ,也有carrier 这个索引,但这个carrier 效率是很低的,现在的执行计划是使用绑定变量,就走carrier 索引,而如果我不走绑定变量,不条件写死
select *
              FROM t_res_flt b
              WHERE  b.fltdate >= to_date(‘2008-07-07’, 'YYYY-MM-DD')
                AND b.fltdate <= to_date(‘2008-07-07’, 'YYYY-MM-DD')
                AND b.carrier = ‘MU'
                AND b.depapt = 'PEG'
                AND b.arvapt = 'Y'
他就走fltdate这个索引,不知道是什么问题,走时间索引查询速度是非常快的。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/40011/viewspace-667180/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 函数索引的问题
请登录后发表评论 登录
全部评论

注册时间:2009-09-01

  • 博文量
    76
  • 访问量
    141479