extraire un nombre packé d'un CHAR [DB2] - SQL/NoSQL - Programmation
Marsh Posté le 07-08-2007 à 09:57:36
tu pourrais poster un exemple de ce que tu choppes avec juste SUBSTR(champ250, 220, 10) ?
et est ce que tu as essayé ton dec(,16,2) sur un literal? peut-etre que ton séparateur n'est pas le bon ce genre de trucs
Marsh Posté le 07-08-2007 à 10:15:33
salut,
j'ai "é°A" mais avec le petit rond au dessus du A.
Oui j'ai essayé SELECT DEC(SUBSTR('ABCDEF12,15', 7, 5), 16, 2) et ca fonctionne correctement. Ca retourne bien 12,15
EDIT : et la valeur contenue dans le char250 que je voudrais obtenir est 514,70
Marsh Posté le 07-08-2007 à 11:58:59
tu veux dire quoi par
Citation : j'ai "é°A" mais avec le petit rond au dessus du A. |
fais un length(trim(SUBSTR(champ250, 220, 10))) en plus, pour voir si tu n'as pas un caractere zarbi qui traine et voir si tu retombes bien sur le nbr de caractere attendu
Marsh Posté le 07-08-2007 à 12:28:01
casimimir a écrit : tu veux dire quoi par
|
c'est ce qui est affiché quand je fais le SUBSTR.
oui ca me renvoi bien 10 le lenght ltrim.
Marsh Posté le 07-08-2007 à 14:23:42
c'est donc que tu n'as pas un nombre dans cette partie de ton record?
Marsh Posté le 07-08-2007 à 09:36:17
Hello,
Je vous soumets un probleme qui me laisse perplexe.
J'ai un champ CHAR(250) sous DB2 V7 sur mainframe qui contient plusieurs informations.
Et en position 220 sur une longueur de 10 j'ai un nombre packé. C'est mal fait mais c'est comme ca, je ne peux pas le changer.
Je voudrais pouvoir extraire ce nombre.
J'ai donc fait SELECT DEC(SUBSTR(champ250, 220, 10), 16, 2)
mais j'obtiens l'erreur suivante :
Invalid character found in a character string argument of the function "decimal".
Vous avez une idée?