[firebase-br] Ajuda com SQL

Dadilton Melo dadilton em gmail.com
Ter Out 8 15:03:54 -03 2013


Coloque índice nos campos RETRANCA, e nos campos de data que vc está
usando. Um índice que contém todos estes campos nele, é o ideal.

Se o índice já está criado, a função UPPER(RETRANCA) impossibilita o uso do
índice no campo RETRANCA. Experimente fazer um UPDATE na tabela MATERIA:

UPDATE MATERIA SET RETRANCA = UPPER(RETRANCA)

Para garantir que os valores do campo RETRANCA sempre venham em upper case,
e tenha certeza que a sua aplicação vai inserir sempre os caracteres em
upper case.

E retire o uso desta função para colocar todos os textos deste campo em
upper case, isso atrasa muito o processamento na base de dados. Mas, você
pode usar UPPER no parâmetro, sem problemas  ( ex: WHERE RETRANCA =
UPPER(:RETRANCA)   ), isto não vai influenciar muito.

Talvez vc possa mandar o resultado do explain desta query prá gente dar uma
olhada :)




Em 8 de outubro de 2013 08:06, Toy Ghilardi <toyhardcore em gmail.com>escreveu:

> Ola Carlos,
>
> Poderia me dizer o objetivo da sua consulta, para que eu possa pensar
> melhor em como faze-la?
> No aguardo.
>
> Abraço.
> Victor Henrique Ghilardi.
>
>
> 2013/10/7 Carlos Phelippe <carlos.phelippe em digilab.com.br>
>
> > Olá pessoal,
> > preciso de ajuda para melhorar a consulta abaixo:
> >
> > 'SELECT RETRANCA FROM MATERIA WHERE UPPER(RETRANCA) = :RETRANCA AND (
> > '(:DATA BETWEEN EXIB_DATAIN AND EXIB_DATAOUT OR (EXIB_DATAESTREIA <=
> :DATA
> > AND EXIB_DATAIN <= :DATA AND EXIB_DATAOUT = :DATANULL)))'
> >
> > Como?
> > [
> >
> http://www.digilab.com.br/wp-content/themes/Digilab/images/logo_digilab.jpg
> ]
> >   Carlos Phelippe
> > Analista de Sistemas
> > +55 48 3234 4041
> > digilab.com.br<http://www.digilab.com.br>
> >
> > ______________________________________________
> > 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
> >
>
>
>
> --
> toyhardcore em gmail.com.br
> ______________________________________________
> 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
>



-- 

Dadilton Bastos Melo



Mais detalhes sobre a lista de discussão lista