[MASOCH-L] Mysql

Lao DanTong danton at inexo.com.br
Fri Oct 26 23:37:06 BRST 2007


On Fri, 26 Oct 2007, Juliano Primavesi - Cyberweb Networks wrote:

> Marcos,
>
> Se tuas queries usam like, os indices nao vao funcionar. Voce deve
> utilizar indices para pesquisas "exatas" (com =).
>
> Ex: select * from cidades where cidade= "porto alegre" and rua like
> '%joao%';
>
> Neste caso eu insiro um indice para cidade
> create index Otimizacao1 on cidades(cidade);
>
> Sempre que voce tiver um campo like, ou uma operação
> (md5,substr,concat,etc) dentro do where, pode até criar um indice para
> aquela tarefa, mas ele nao vai nem ser usado.

no caso dele a busca é sobre uma data. como ele quer buscar sobre parte da 
data, essa parte deveria ser uma chava. p.ex., algo assim:

RUIM:
create table ...(
...
datahora datetime,
...)

BOM:
create table ...(
...
ano int(4),
mes int(2),
dia int(2),
...
key (ano),
key (mes),
key (dia),
key data_completa (ano,mes,dia),
...);



More information about the masoch-l mailing list