| 

.NET C# Java Javascript Exception

1
Ich hatte als Ausgangsbasis folgende Tabelle:

RW Beleg RWBelegposition Soll Text
---------------------------------------------------
1665627911 1 1 Soll Text1
1665627911 2 -1 leer
1665627911 3 1 leer
1665627911 4 -1 Haben Text1

daraus habe ich nach dem ich einen view erzeugt habe folgende Tabelle geformt:

RWBeleg TextSoll TextHaben
------------------------------------------
1665627911 Soll Text1 leer
1665627911 leer Haben Text1

Ich bräuchte nun aber diese Tabelle:

RWBeleg TextSoll TextHaben
------------------------------------------
1665627911 Soll Text1 Haben Text1

und irgendwie fällt mir nichts ein - ich seh wahrscheinlich den Wald vorl lauter Bäumen nicht mehr ;-)

Ich arbeite mit dem Reportgenerator unseres ERP Systems. Wir haben eine Oracle Datenbank Oracle Database 11g Telease 11.2.0.3.0 - 64 bit

Kann mir jemand helfen, bitte????
News:
23.05.2014
riankail 3 2
3 Antworten
0
Bei der Anfrage fehlen leider einige entscheidende Angaben:
Kann es mehr als einen Solltext und oder Habentext geben?
Wie soll entschieden werden, welcher Habentext zu welchem Solltext passt?
Erst danach könnte man mit einem Self-Join ein Ergebnis konstruieren oder gleich eine PL/SQL-Funktion entwerfen.
23.05.2014
edvservice 1,2k 6
0
Nein, es gibt zu jedem RW Beleg nur einen TextSoll, der nicht leer ist und ebenso nur einen TextHaben, der nicht leer ist.

Ein TextSoll passt nur zu einem TextHaben, wenn der RW Beleg übereinstimmt.
26.05.2014
riankail 3 2
0
Ich habe gerade kein Oracle zur Hand, deshalb das Ganze mit SQL-Server:
Create Table kdrtest(id nvarchar(10), pos int, art int, btext nvarchar(20))
GO

DELETE FROM kdrtest
GO

insert into kdrtest (id, pos, art, btext)
values (1, 1, 1, 'Test Soll')
insert into kdrtest (id, pos, art, btext)
values (1, 2, -1, NULL)
insert into kdrtest (id, pos, art, btext)
values (1, 3, 1, NULL)
insert into kdrtest (id, pos, art, btext)
values (1, 4, -1, 'Test Haben')
GO

insert into kdrtest (id, pos, art, btext)
values (2, 1, 1, NULL)
insert into kdrtest (id, pos, art, btext)
values (2, 2, -1, 'Test2 Haben')
insert into kdrtest (id, pos, art, btext)
values (2, 3, 1, 'Test2 Soll')
insert into kdrtest (id, pos, art, btext)
values (2, 4, -1, NULL)
GO

select t1.id, t1.btext, t2.btext
from kdrtest t1, kdrtest t2
where t1.id = t2.id AND t1.art=1 and t1.btext is not null
and t2.art = -1 and t2.btext is not null

liefert:
1 Test Soll Test Haben
2 Test2 Soll Test2 Haben

das gewünschte Ergebnis. Hoffe, es hilft.
26.05.2014
edvservice 1,2k 6
Ja, hat sehr geholfen. Vielen Dank!!!
riankail 10.07.2014

Stelle deine Sql-Frage jetzt!