PDA

View Full Version : CAST(SUM(SUBSTR



tarkusch
05-05-14, 15: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, 15: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, 15:50
Die Variante CAST(SUM stimmt doch oder?

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

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