Rodrigo Monteiro wrote:
> Bom dia a todos.
>
> indice para este campo (aliás, uma pesquisa em ordem por data do
> movimento demorava 4 minutos para trazer 629 registros, com o indice
> caiu para 5 segundos!!!!!!). O problema é que quando ele pede ordenado
> ou por valor (sum(valorvenda)), por quantidade(sum(quantidadevendida))
> ou por lucratividade(sum(valorvenda-custocontabil)) no order by o campo
> vai assim,
>
> *'order by sum(valor) desc'*
Vejamos, como fica a performance da consulta sem a ordenação? Se ficar
melhor, será que não seria conveniente jogar o valor da consulta sem
ordenação para uma tabela temporária e depois recuperar ordenando?
Certamente não é a forma mais elegante mas pode resolver pontualmente
este problema.
> me parece qque não importa se o campo tem indice ou não, demora muito
> para trazer a informação, considerando que os testes eu tenho feito são
> em uma máquina aqui na empresa dedicada a este teste e que no cliente o
> tempo é muito maior pela quantidade de processos executados
> simultaneamente.
> GOSTARIA DE SABER SE EXISTE ALGUM TIPO DE "INDICE TEMPORARIO" PARA
> CAMPOS SOMADOS? O que eu tenho que verificar para melhorar a performance
> do meu banco de dados? Eu tenho uma versão para Sql Server que está em
> testes e que já demonstrou muito mais agilidade.
Para começar você precisa verificar o explain das consultas, tem como
mandar tanto da consulta que ordena por data quanto da consulta que
apresenta lentidão para a lista? Sem o explain, qualquer informação
passada aqui será mera especulação.
<opiniaopessoal>
Creia que no SQL Server você pode ganhar pontualmente em algumas
coisas, mas quando poe tudo na balança você acaba perdendo.
</opiniaopessoal>
--
Shander Lyrio
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral