[firebase-br] Desempenho com COUNT

Rodrigo Purgato rpurgato em gmail.com
Qua Jan 7 08:04:04 -03 2009


Bom dia marcelo

otimize ela da seguinte maneira:

SELECT ID_CLIENTE, NOME_CLIENTE, COUNT( ID_CLIENTE)  AS NUMROWS
FROM CLIENTES
GROUP BY ID_CLIENTE, NOME_CLIENTE

2009/1/6 Marcelo Geyer <estanisgeyer em gmail.com>

> Boa tarde,
>
> A pergunta é simples mas fiquei apavorado com a performance. Tenho um
> cadastro com 1300 registros.
> Ao fazer o SQL abaixo (exemplo) com subselect:
>
> SELECT ID_CLIENTE, NOME_CLIENTE,
> (SELECT COUNT( 1 ) FROM CLIENTES) AS NUMROWS
> FROM CLIENTES
> GROUP BY ID_CLIENTE, NOME_CLIENTE
>
> Este SQL leva de 3 a 4 segundos para me retornar as informações. Se faço
> independente, leva menos de 1 segundo. Como eu poderia otimizar SQL com
> este
> tipo de estrutura? Imagino que o culpado aqui é o subselect que a cada
> registro é recalculado.
> A pergunta é simples mas bem oportuna, vejam como um subselect com count
> pode comprometer a aplicação.
>
> Att.
>
> Marcelo E. Geyer.
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista