![]() |
Datenbank: DB2 • Zugriff über: Embeded SQL
Summe über SUBSTR geht nicht
aloha...
im moment programmier ich ein interface programm, was edi daten aufbereitet... in einem satz benötige ich das gesamtgewicht eines lieferscheins... dieses haben wir in keiner datei gespeichert, d.h. ich muss irgendwie das gewicht aller positionen zusammfassen bevor ich die sätze gelesen hab... um dies zu machen wollte ich über SQL und SUM mir das gesamtewicht ermitteln lassen, das problem besteht aber darin, das meine datei nicht in felder getrennt ist, sondern die daten stehen in einem feld, also ich hab einen string von 128 zeichen... die summe wollt ich wie folgt ermitteln:
SQL-Code:
diesen befehl schluckt er aber leider nicht... er bringt immer die meldung "verwendung von sum ungültig"
Select SUM(SubStr(F00001, 41, 4)) From Lib/Dat1
hat jemand ne idee woran das liegt??? evtl. daran das es sich um ein zeichenfeld handelt und er die summe nicht bilden kann??? ich hoffe mir kann evtl. jemand ein paar tips geben, auch wenns nichts mit delphi am hut hat... |
Re: Summe über SUBSTR geht nicht
Substr liefert ja einen (Teil-)String zurück, wie willst du Strings summieren?
Du mußt also die Strings zuerst in nummerische Werte wandeln. |
Re: Summe über SUBSTR geht nicht
Zitat:
das doof ist halt, das es sich bei der datei hier um eine sogenannte S36 datei auf der AS/400 handelt (vielleicht kennt das jemand???) aufjedenfall haben meine kollegen die datei beschreibungen in word angelegt, und die felder immer als alpha, decimal etc. deklariert... aber in der datei wirds als 1 feld alphanumerisch gespeichert und da fällt man am anfang halt drauf rein und denkt ok die stellen sind ja decimal... naja was solls... so gehts:
SQL-Code:
Select Sum(Decimal(SubStr(F00001, 41, 4))) From Lib/Dat1
thx for help |
Re: Summe über SUBSTR geht nicht
ok, ein problem hab ich dennoch!
kann man im decimal befehl kommastellen angeben? edit: so gehts schon mal nicht :(
SQL-Code:
Select Sum(Decimal(SubStr(F00001, 41, 4)),4,2) From Lib/Dat1
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz