PDA

View Full Version : SQL V5R4 DEC -> HEX



KingofKning
19-08-14, 12:16
Hallo *all,
es scheint mir so zu sein das die Forumssuche nicht mehr richtig funktioniert....

Die Funktion hex() arbeitet nicht so wie ich es erwarte:

select hex(digits(adid6)), adid6, hex(255)
from kndart2 order by adid6 desc


HEX ID6 HEX ( 255 )
PreisKnd
an Ident
F0F0F1F0F3F2F1F9 103219 000000FF
F0F0F1F0F3F2F1F9 103219 000000FF


hätte meiner Meinung nach aber so aussehen müßen
103219 = hex 19333

Wo ist mein Denkfehler?


GG

Fuerchau
19-08-14, 12:56
HEX mach genau das, was du hier eben tust:

digits(feld) = Zeichenfeld
hex(Digits(Feld)) kann daher nur F0....F9 liefern.

hex(255) = 255 wird als Integer interpretiert, daher eben 000000FF.

Die Funktion HEX ist keine Umrechnung von Dezimal nach Hexadezimal sondern die codierte Darstellung der Zeichen.

B.Hauser
19-08-14, 13:16
Wenn du das Ergebnis 19333 erwartest, musst Du Deine gepackte Daten in zunächst in einen integer Wert konvertieren:


Select Hex(Int(YourFld))
From YourTable

KingofKning
19-08-14, 13:29
Jo ganz herzlichen Dank.

GG