Utilisation du LIKE sur des variables de type integer castées en CHAR
Bonjour à tous, je me suis inscrit sur ce forum qui me semble très actif :)
Je connais actuellement quelques problèmes sur des requêtes utilisant le mot clé LIKE, sur des donnés de type INTEGER : J'aimerais afficher toutes les données d'une table EMPLOYÉ lorsque l'identifiant de l'employé se termine par 1.
La variable ID_EMP est un INTEGER de taille 10.
Pour se faire voici la requête qui a été développée :
Code:
1 2 3 4 5 6
|
SELECT ID_EMP, CAST(ID_EMP AS CHAR(10))
FROM DB.TE_EMP
WHERE ID_EMP IN (1,10797,81,2881,120741)
AND CAST(ID_EMP AS CHAR(10)) LIKE '%1'
WITH UR |
Si je mets en commentaire la 4ème ligne, cela m'affiche toutes les données, ce qui me permet d'affirmer les ID_EMP est bien casté en CHAR.
Si je dé-commente la 4ème ligne, le résultat retourné est 0 lignes, Empty result set fetched donc aucune donnée n'est trouvée alors que je m'attends à avoir 4 lignes retournée. Je pense que le problème vient du LIKE et du '%1', peut-être du simple quote qui déglingue le symbole %.
Si ma contrainte est = '81' au lieu de LIKE '%1' alors j'ai bien un résultat.
Donc sur le coup, je sèche un peu et je ne vois pas d'autre façon d'afficher les employés se terminant par 1.
Est-ce que quelqu'un aurait une idée sur la manière d'agir pour arriver au résultat souhaité ? Merci d'avance pour la lecture de ce message et pour votre aide.