[firebase-br] query bastante lenta

Sergio Nascimento sergiojampapb em gmail.com
Seg Jul 23 12:01:34 -03 2012


Não existe indice no campo ns.data_documento.

Em 23 de julho de 2012 11:16, André Conrado <acf em andreconrado.net> escreveu:

> Existe um índice para o campo NS.DATA_DOCUMENTO?
>
> Em 23 de julho de 2012 08:20, Washington Tavares
> <washingtontavares em gmail.com> escreveu:
> > * Criar uma view do select e aplicar o Where na View
> > * Criar um Indice na Tabela de NF_SAIDAS baseado no Join
> >
> > Em 23 de julho de 2012 07:35, Sergio Nascimento
> > <sergiojampapb em gmail.com>escreveu:
> >
> >> Pessoal,
> >>
> >> Estou com esta query que está demorando cerca de 3 horas:
> >>
> >> SELECT prod.COD_CONT, PIS_ALIQUOTA, coalesce(SUM(NSI.NFE_VLR_TOTAL),0)
> AS
> >> VL_TOT_REC, coalesce(SUM(iif(NSI.PIS_ALIQUOTA=0,0,NSI.PIS_BC)),0) AS
> >> VL_BC_PIS, coalesce(SUM(NSI.PIS_VALOR),0) AS VL_CRED FROM
> NF_SAIDAS_ITENS
> >> NSI
> >> JOIN NF_SAIDAS NS ON (NSI.EMP_CODIGO = NS.EMP_CODIGO AND
> >> NSI.ESPECIE_DOCUMENTO = NS.ESPECIE_DOCUMENTO AND NSI.NUMERO_DOCUMENTO =
> >> NS.NUMERO_DOCUMENTO)
> >> JOIN PRODUTOS  PROD ON (NSI.EMP_CODIGO = PROD.EMP_CODIGO AND
> >> NSI.PROD_CODIGO = PROD.PROD_CODIGO)
> >> WHERE NSI.EMP_CODIGO = 1 and NS.DATA_DOCUMENTO between '2012-01-01' and
> >> '2012-01-31'
> >> GROUP BY prod.COD_CONT, PIS_ALIQUOTA
> >>
> >> Acontece que está damorando tanto por causa do join na tabela NS.
> >> Fiz backup/restore no banco antes de executar.
> >> A tabela NS tem 89.420 registros e a tabela NSI tem 94.769 registros
> (logo
> >> nao sao tao grandes)
> >> se eu tirar o teste da DATA_DOCUMENTO do WHERE nao demora nem 1 segundo.
> >>
> >> Vi uma sugestao aqui de se colocar um sub-select para nao usar o join,
> mas
> >> era em uma consulta simples, nao em uma com SUM e GROUPY BY.
> >>
> >> Alguém pode ajudar ?
> >> ______________________________________________
> >> 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
> >>
> >
> >
> >
> > --
> > Washington Tavares
> > 84 9188 3135(tim)
> > tawaresw em hotmail.com
> > tawaresw em yahoo.com
> > Skype: washington_tavares
> > ______________________________________________
> > 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
>
> ______________________________________________
> 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