Administração do sistema

Estatísticas dos filtros mais usados em uma QUERY

RT.FAQ-142396
Para consultar quais são os filtros mais utilizados em um determinado bloco de interface em uma determinada base de cliente, pode-se executar o seguinte SQL:

set bloco 'PROD.CAD_PRODUTOS';
set dias 30;

set pesquisas count(1)
from logs
where data_hora > current_date - 30
and origem = '${bloco}'
and tipo = 'REQUEST'
and descricao like '%Z_ACTION=LIST%';

select key, count(1)*100.0/${pesquisas} as percentual
from (
    select replace(substring(line, 1, position('=' in line)),'=','') as key
    , substring(line, position('=' in  line) + 1, 999) as value
    from (
        select unnest(arr) as line from 
        (
            select string_to_array(
             replace(replace(replace(replace(descricao,'|=',''),'|d',''),'|b|',''),'|s','')
             , chr(10)) as arr
            from logs
            where data_hora > current_date - 30
            and origem = '${bloco}'
            and tipo = 'REQUEST'
            and descricao like '%Z_ACTION=LIST%'
        ) q
    ) q
) q
where value is not null and value <> ''
and key like 'Q_%'
group by key
order by count(1) desc;

Atenção
Alguns query-operators podem ser considerados como filtros "ativos" mesmo que nenhum parâmetro seja informado pelo usuário. O SQL acima poderá ser mais elaborado para que outros query-operators possam ser melhor interpretados.