通过函数索引提升函数分组查询效率

    技术2022-05-19  36

    今天优化一个查询语句:

    select to_char(m_date, 'MM'), count(*) from m_table group by to_char(m_date, 'MM'), 速度比较慢,需要1.5s左右的时间。在群里面讨教了一下高手,说通过函数索引可以优化, 于是:

    create index m_date_month on m_table (to_char(m_date, 'MM'));

    执行查询,

    select to_char(m_date, 'MM'), count(*) from m_table group by to_char(m_date, 'MM');

    变化不明显,继续讨教,说需要分析索引和表,继续

    analyze index m_date_month compute statistics; analyze table m_table compute statistics;

    果然,速度大幅提高, Thanks

     


    最新回复(0)