-
Rechnen im SQL
Hallo *all,
da ich nicht der SQl Guru bin hier meine Frage:
Ich habe 2 Dateien, in einer steht ein Wert, und in der 2 steht ob der Wert positiv oder negativ ist. Ich möchte jetzt gerne in SQL aus den 2 Dateien eine machen und direkt den Wert sauber setzen.
Vorher Vorher
Art
1234 Zugang 1000 Zugang +
1234 Abgang 500 Abgang -
BSP
Art Bewegungsart Menge
1234 Zugang 1000
1234 Abgang -500
Das Problem ist das + bei mehreren Zuständen auftreten kann z.B. auch bei Rücknahme etc. und Abgang kann ja auch Schwund sein. Ich müßte dieses + oder - also bei einem Treffer aus eine Liste machen.
Kann mir da jemand Denkanstöße geben?
GG
-
... case ist einer deiner Freunde, es könnte aber auch einfacher sein sich eine Hilfstabelle zu machen (ich hasse case, da vertippe ich mich immer) und sich von dort dann eine +1 oder -1 zu holen und damit zu multiplizieren.
D*B
 Zitat von KingofKning
Hallo *all,
da ich nicht der SQl Guru bin hier meine Frage:
Ich habe 2 Dateien, in einer steht ein Wert, und in der 2 steht ob der Wert positiv oder negativ ist. Ich möchte jetzt gerne in SQL aus den 2 Dateien eine machen und direkt den Wert sauber setzen.
Vorher Vorher
Art
1234 Zugang 1000 Zugang +
1234 Abgang 500 Abgang -
BSP
Art Bewegungsart Menge
1234 Zugang 1000
1234 Abgang -500
Das Problem ist das + bei mehreren Zuständen auftreten kann z.B. auch bei Rücknahme etc. und Abgang kann ja auch Schwund sein. Ich müßte dieses + oder - also bei einem Treffer aus eine Liste machen.
Kann mir da jemand Denkanstöße geben?
GG
-
Tja,
wie meistens eine Frage der Syntax.
Probiert habe ich das hier
create view gregor/test03 as
select bwtenr, teknam, bwbdn2, bwlgnr, bwanr,
case bwvgar = 150 then -bwbmen else bwbmen end case as bwbmen
Aber mögen tut er es nicht.
Wie müßte es denn richtig lauten?
GG
-
select
case when charnn = 'Hugo' then 'Otto' else 'Fritz' end as denkste
from dsternb1.testtyp
 Zitat von KingofKning
Tja,
wie meistens eine Frage der Syntax.
Probiert habe ich das hier
create view gregor/test03 as
select bwtenr, teknam, bwbdn2, bwlgnr, bwanr,
case bwvgar = 150 then -bwbmen else bwbmen end case as bwbmen
Aber mögen tut er es nicht.
Wie müßte es denn richtig lauten?
GG
-
Tja der stört sich an dem = Zeichen.
Token = ungültig. Gültige Token: + -.
GG
-
Es gibt 2 Varianten:
case Ausdruck
when const1 then Ausdruck1
[when const2 then Ausdruck2]
[else Ausdruck3]
end [as] NewName
case
when Ausdruck1 then Ausdruck1
[when Ausdruck2 then Ausdruck2]
[else Ausdruck3]
end [as] NewName
Ausdruck kann jede beliebige Formel sein, die einen Wert ergibt
Für deine Fall also
case Feld
when 150 then ...
else ...
end
Wichtig zu wissen ist, wenn kein Else vorhanden ist und keine Bedingung wahr ist wird NULL zurückgegeben.
-
Brille putzen hilft zuweilen!
select
case when charnn = 'Hugo' then 'Otto' else 'Fritz' end as denkste
from dsternb1.testtyp
oder
select
case charnn when 'Hugo' then 'Otto' else 'Fritz' end as denkste
from dsternb1.testtyp
man beachte wo das "when" steht!!!!!
 Zitat von KingofKning
Tja der stört sich an dem = Zeichen.
Token = ungültig. Gültige Token: + -.
GG
-
Danke,
woher wußtest Du das ich Brillenträger bin ;-)
GG
-
Das läuft wohl unter Persönliche Erfahrungen
Gruß AS400.lehrling
PS: Trage auch eine Brille
Similar Threads
-
By christian_lettner in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 16-11-06, 10:15
-
By Kaufmann in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 28-06-06, 14:11
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 09:43
-
By hzille in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 06-07-04, 10:38
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks