Actualités : analyse de données, Business Intelligence, Data Science, Big Data
Forums, dernières contributions

Ordre like '%valeur' sous DB2 sur une colonne de type alphanum

 Jean-Luc desir
Vendredi 23 Mars 2007

Version imprimable
[Ignorer]
Bonjour à vous,
Voici mon problème :cry:
Dans une table DB2, j'ai crée une colonne de type alphanum de longueur 15c mais contenant des valeurs suivantes sur 5c: A1010, B1011, C1010...
Ensuite, j'ai utilisé dans BO l'opérateur correspond au modele '%1010' dans une requête pour n'avoir que des occurrences avec les valeurs terminant par 1010 mais le résultat est négatif.
Après recherche, l'explication est que les informations de type alphanum dans BD2 sont cadrées à gauche et complété par des blancs. J'ai donc modifié mon ordre like comme suit en terminant par 10 blancs '%1010 ' et cela fonctionne. C'est un peu lourdingue et je voudrais savoir si en amont lors de la phrase création de cette colonne dans DB2 y-a-t-il pas un moyen de supprimer tous ces blancs ou bien d'initialiser par des valeurs vides ?
Je veux surtout éviter de faire du bidouillage dans le sql avec rtrim ou de compléter par des blancs. Merci pour vos lumières.:D
 Christian
Samedi 24 Mars 2007

Version imprimable
[Ignorer]
Il faut utiliser le type VARCHAR pour qu'une zone en CHAR ne soit pas paddée avec des blancs. DB2 stocke juste la longueur utile mais il y a un octet supplémentaire pour enregisterer la longueur significative de la zone. J'espère que ça résoud votre problème
 Jean-Luc desir
Lundi 26 Mars 2007

Version imprimable
[Ignorer]
Bonjour,
Merci pour votre réponse et je vais essayer votre astuce mais je ne sais pas comment je dois interpreter cet octet supplémentaire dans la recherche de ma chaine de caractères avec le % ou bien c'est complément transparent.
A bientôt.
JL
 ham
Lundi 26 Mars 2007

Version imprimable
[Ignorer]
bonjour,

ça sera complément transparent.
 Jean-Luc desir
Lundi 26 Mars 2007

Version imprimable
[Ignorer]
Merci beaucoup.
JL


Twitter
Rss
LinkedIn
Facebook
Apple Podcast
App Store
Google Play Store