-- Índices para acelerar back.v_realizado_conta_mes_por_dia
-- (gargalo em realizado_anterior)

-- Tabela principal de realizado
CREATE INDEX IF NOT EXISTS idx_realizado_empresa_ano_mes_dia
    ON back.realizado (cdempresa, anoref, mesref, dtmovimento)
    WHERE flcancelado = 0;

CREATE INDEX IF NOT EXISTS idx_realizado_empresa_ano_mes_conta
    ON back.realizado (cdempresa, anoref, mesref, cdplanocontabil)
    WHERE flcancelado = 0;

-- Plano de contas (joins da hierarquia)
CREATE INDEX IF NOT EXISTS idx_planocontabil_cdcontacontabil
    ON back.planocontabil (cdcontacontabil);

CREATE INDEX IF NOT EXISTS idx_planocontabil_cdconta
    ON back.planocontabil (cdconta);

CREATE INDEX IF NOT EXISTS idx_planocontabil_cdcontapai
    ON back.planocontabil (cdcontapai);
