PDA

View Full Version : CAST(SUM(SUBSTR



tarkusch
05-05-14, 14:05
Hallo,

hätte wieder mal eure Unterstützung gebraucht.

Ich habe ein Alpha-Feld (RCHTXT) wo ein Betrag ohne Komma steht.
Mit dem Sql-Statements liste ich diese Beträge auch erfolgreich auf:


SELECT CAST(SUBSTR(RCHTXT, 1, 7) AS INT) || ',' || SUBSTR(RCHTXT,
8, 2) as Betrag FROM ZF1P WHERE RCHGDAT between 20101201 and
20101231 AND A1DONE = 'X'


Nun wollte ich als nächsten Schritt eine Summe bilden aber ohne Erfolg:


SELECT CAST(SUM(SUBSTR(RCHTXT, 1, 7) AS INT) || ',' || SUBSTR(RCHTXT,
8, 2) AS DECIMAL(9,0)) AS Betrag FROM ZF1P WHERE RCHGDAT between 20101201 and
20101231 AND A1DONE = 'X'


Wie müsste eigentlich mein Sql-Statement aussehen?
Die Variante CAST(SUM stimmt doch oder?

Dank im Voraus

TARKI

andreaspr@aon.at
05-05-14, 14:21
Du müsstest das mit einem Sub-Select lösen können.


... select sum(deinIntWert) from
(select Cast(deinString as int) as deinIntWert from ...)

Pikachu
05-05-14, 14:50
Die Variante CAST(SUM stimmt doch oder?

Mach die Summe besser über die Zahlenwerte und nicht über die Zeichenketten. ;)

Fuerchau
05-05-14, 16:42
sum(dec(substr(myfield, 1, 9), 9, 0) / 100)