Select più lenta su campo indicizzato | La nostra community

Topic: Pubblico - Composto da 3 Posts di 2 Utenti.

27 Maggio, 2011 08:53 #1
nika90
Utente

nika90
Registrato: May, 2011
Posts: 2
Offline

Salve,
Su un database MYSQL ho una tabella con circa un milione di record con un campo di tipo 'date'.

Le select del tipo data>'2011-05-01' sono tendenzialmente lente.
Ho provato quindi ad indicizzare il campo data.
Il risultato è che, se nella condizione inserisco una data recente, per cui mi vengono selezionati pochi record, la select è velocissima. Se invece inserisco un data per cui mi vengono selezionati molti record, la select risulta essere molto ma molto più lenta, anche della stessa query eseguita sul campo non indicizzato.

Ho provato a fare le stessissime cose su in campo di tipo intero in cui memorizzo il timestamp unix.
I risultati sono identici.

Qualcuno può aiutarmi ad ottimizzare queste query?

27 Maggio, 2011 10:37 #2
darasc
Moderatore

darasc
Registrato: Jul, 2010
Posts: 64
Offline

Ciao nika90,

potresti postare un dump della tabella (create e qualche insert di esempio) in modo da capire meglio il problema?

La lentezza delle query può essere causata anche da altri motivi che al momento magari ti sfuggono.

Fammi sapere con più precisione quali sono le tabelle coinvolte e che tipo di query provi ad effettuare.

27 Maggio, 2011 15:55 #3
nika90
Utente

nika90
Registrato: May, 2011
Posts: 2
Offline

ciao,
purtroppo non posso postare niente.
Comunque la tabella è una semplice tabella con campi di diverso tipo tra cui uno di tipo 'date'.
Anche una semplice query del tipo - SELECT * FROM tabella WHERE tabella.data>'2000-01-01' - da problemi

Condividi su:

Loggati o Registrati per replicare