Sto usando Interbase XE (developer edition) e devo ottimizzare questa query:
SELECT *
FROM ANAGRAFICA
WHERE COGNOME LIKE '%AN%'
ORDER BY NOME
Eseguendo questa query il tempo di esecuzione è di 2,5 secondi (troppo elevato per il nostro programma)
Cercando su internet ho visto che è consigliato di modificare la query in questo modo:
SELECT *
FROM ANAGRAFICA
WHERE COGNOME STARTING WITH 'AN'
ORDER BY NOME
La query è effettivamente più veloce perché ha un tempo di esecuzione di 30 nanosecondi (perché usa l'indice creato sui campi COGNOME,NOME) ma il risultato è diverso perché visualizza soltanto i record che iniziano con cognome 'AN' e non visualizza quelli che contengono o terminano con 'AN' (come dovrebbe essere in origine).
Esempio: non verrà visualizzato 'FERANI'.
Qualcuno mi può gentilmente dire come risolve questo problema?