select name,sex from table group by sex
对表table建索引的时候,顺序为name,sex,是否把sex作为索引的第一项速度会快些,另个oracle中有没有聚合索引的概念?或者类似的解决方案?

解决方案 »

  1.   

    是否把sex作为索引的第一项速度会快些======>会快些
      

  2.   

    针对与这个sql语句,最好建如下索引
    create index idx_name on tbname(name,sex);
      

  3.   

    有组合索引的,具体的我不是很清楚,楼主自己勤劳些在论坛或者 baigoogledu.com 搜索一下啦
      

  4.   

    select name,sex from table group by sex
    这句话也行得通???
      

  5.   

    这句有语法错误吧,oracle的命名规则明确说关键字是不能作为表名的,再说加索引的必要六条条件,明确说明在如性别(男,女)之类的取值域很小的列没必要加index
      

  6.   

    补充点点:对于sex(gender更合适些^_^)这种取值很少的列最好不要建立普通类型的索引(b*tree index) ,如果确实有必要建索引的话,应该建立位图索引(bitmap index).
    关于索引更深入的内容可以参考《expert one-on-one》第7章