select count(*) as corrnum,USERNAME from V_NAVIGATE where ERRORID=0  group by USERNAME
查询想来比较慢,请高手看看,如何提高效率,NAVIGATE 是视图

解决方案 »

  1.   

    估计关键是你的视图NAVIGATE里面有问题,
      

  2.   

    视图的V_NAVIGATE原表的ERRORID字段要有索引
      

  3.   

    select   count(ID)   as   corrnum,USERNAME   from   V_NAVIGATE   where   ERRORID=0     group   by   USERNAME 
      

  4.   

    还可以优化的一点是不要使用count(*),把*换成一个数字,比如count(1)
      

  5.   

    还可以优化的一点是count(*)变成count(1)
      

  6.   

    优化不是光加索引就顶用的,好要看你用的是oracle什么版本,分析他的执行计划,手动hints他的执行规则,那就很牛了!
      

  7.   

    count(*) 可能会使全表扫描
    还有lz数据量是多少
    用的什么版本
      

  8.   

    count()里面最好是索引的字段啊!
      

  9.   

    应该从这个V_NAVIGATE视图  开刀   问题应该就处在 这里