Dans un fichier article assez volumineux (150.000 références) la requête SQL suivante est assez longue (3 à 4 secondes) :
La colonne article est indéxée, il semble que ce soit la fonction UPPER qui ralentisse la requête car sans cette fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT * FROM ARTICLES WHERE UPPER(DESIGNATION) LIKE 'BOULON%'
la requête est instantanée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT * FROM ARTICLES WHERE DESIGNATION LIKE 'BOULON%'
L'inconvénient c'est que les articles en minuscules ne sont pas trouvés...
J'ai donc l'impression que le moteur Firebird converti toute la table en majuscules puis ensuite exécute la requête...
Existe t'il un moyen d'utliser l'opérateur LIKE de façon a ce qu'il soit insensible à la casse ?
NB : le problème est le même avec STARTING WITH
Partager