salve a tutti,
sono alle prese con la realizzazione di un motore di ricerca per strutture turistiche.
in un form ho 6 menu a tendina relativi ai parametri per effettuare la ricerca e ognuno di essi ha, come prima voce, l'opzione "Qualsiasi" (che indica di non considerare nessuna preferenza per il relativo parametro).
accade però che, pur avendo ben pochi record, la query risulti lentissima.
questa è quella di base (quando l'utente non specifica alcun parametro):
Codice PHP:
SELECT DISTINCT tipistrutture.nome AS nometipo, strutture.id AS idstruttura, strutture.nome, strutture.localita, strutture.regione FROM strutture, tipistrutture, linkservizistruttura, linktrattamentistruttura, servizi, trattamenti WHERE strutture.tipo=tipistrutture.id
che diventa, nel caso pessimo:
Codice PHP:
SELECT DISTINCT tipistrutture.nome AS nometipo, strutture.id AS idstruttura, strutture.nome, strutture.localita, strutture.regione FROM strutture, tipistrutture, linkservizistruttura, linktrattamentistruttura, servizi, trattamenti WHERE strutture.tipo=tipistrutture.id AND strutture.regione='Basilicata' AND strutture.localita='Metaponto' AND strutture.tipo=4 AND tipistrutture.id=4 AND strutture.stelle=1 AND linkservizistruttura.idstruttura=strutture.id AND servizi.id=18 AND linkservizistruttura.idservizio=18 AND linktrattamentistruttura.idstruttura=strutture.id AND linktrattamentistruttura.idtrattamento=6
come posso rendere le cose più veloci?
da cosa dipende la lentezza della query?
grazie a tutti. :)