Envoyé par
Waldar
Compliqué si n'importe quelle chaîne peut être candidate.
Si vous voulez vérifiez des chaînes en particulier vous pouvez utiliser trim :
1 2 3 4 5 6 7
| select col
from (select 'xxyyzzxxyyzz' as col from dual)
where ltrim(col, 'xxyyzz') is null;
COL
------------
xxyyzzxxyyzz |
Non Waldar, le ltrim ne vérifie pas l'ordre et c'est une vérification pour chaque caractère.
LTRIM(col, 'xxyyzz') = LTRIM(col, 'xyz') = LTRIM(col,'zyx') =LTRIM(col, 'yzx'),etc..
Donc ta requête ramène aussi les lignes 'zzzzzzzzzxy' voire 'z'
Le trim est utile pour vérifier qu'une chaine contient des nombres
LTRIM('11122012', '0123456789') IS NULL
Ou pour supprimer des caractères de fin/début de chaine
LTRIM('1; 2; 3; 4; ; ; ', ' ;')
Partager