Select über 3 Tabellen: Wie? Join? Subquery? füllen ITAB?

Getting started ... Alles für einen gelungenen Start.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Select über 3 Tabellen: Wie? Join? Subquery? füllen ITAB?

Beitrag von ASchreier (ForumUser / 10 / 0 / 0 ) »
Hallo Zusammen,

ich versuche aus einer Tabelle Daten zu lesen in Abhängigkeit zu Einträgen aus 2 weiteren Datenbanktabellen. Was ist eurer Meinung der beste Weg?

z.B. über Subquery, Join, View oder füllen einer ITAB und lesen mit "EXISTS". Ich habe unten ein Coding angehängt welches zumindest mal funktioniert.

Dazu noch eine Frage zu Subquerys: Im Buch ABAP-Objekts werden Subquerys als eine der perfomantesten Lösungen vorgestellt....
Hier lese ich aber öfter dass dies nicht so ist :?:

CU
Andreas

SELECT *
FROM vdbepi AS a
INNER JOIN vdbeki AS b
ON a~bukrs = b~bukrs AND
a~rbelkpfd = b~rbelkpfd
INTO CORRESPONDING FIELDS OF TABLE it_vdbepi
WHERE a~sbewart IN s_bewart AND
b~ranl IN s_ranl AND
AND EXISTS
( SELECT ranl
FROM zvdarl_ledger
WHERE bukrs = b~bukrs AND
dbest = p_dbest AND
ranl = b~ranl AND
fest_bis IN s_fbis ).

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von DeathGuardian (Expert / 759 / 0 / 3 ) »
ASchreier hat geschrieben:Was ist eurer Meinung der beste Weg?

z.B. über Subquery, Join, View oder füllen einer ITAB und lesen mit "EXISTS". Ich habe unten ein Coding angehängt welches zumindest mal funktioniert.

Dazu noch eine Frage zu Subquerys: Im Buch ABAP-Objekts werden Subquerys als eine der perfomantesten Lösungen vorgestellt....
Hier lese ich aber öfter dass dies nicht so ist :?:
Der beste Weg?
Naja, das kommt eigentlich immer auf die DB-Tabellen selbst an.
Manchmal ist ein JOIN das beste, manchmal kann aber auch ein Subquery besser sein, manchmal sind aber auch 3 Selects mit FOR ALL ENTRIES besser.

Tja, das ist halt so ne Wissenschaft für sich selbst.

Und vorallem wie intiligent die DB selbst ist (Oracel z.B. hat manchmal sehr merkwürdige Eigenarten [Schon mal einen RANGE INDEX SCAN gesehen der Tausende FULL TABLE SCANS macht]).

Wie schon gesagt, es gibt keinen besten Weg.')

Beitrag von ASchreier (ForumUser / 10 / 0 / 0 ) »
Sehr passend: Wir haben ne Oracle Datenbank.... :?

Gibt es Möglickeiten außer dem TIMESTAMP die Perfomance zu testen?
Ich habe das bekannte Problem dass unsere Testumgebung relativ "klein" ist. Dort laufen die Report online.

Richtige Probleme gibts dann erst im Konsolidierungssystem... Ich habe eingentlich keine Lust 2-3 verschiedene Versionen dorthin zu transportieren um dann zu testen welche Lösung am besten ist....

Seite 1 von 1

Vergleichbare Themen

16
Antw.
4061
Views
Select Join mehrere Tabellen anschließend IF-Anweisung
von thinkpad-94 » 30.01.2019 13:16 • Verfasst in ABAP® für Anfänger
7
Antw.
1520
Views
Itab füllen mit value# und corresponding# und Einzelzuweisung Feld
von Romaniac » 14.10.2021 19:59 • Verfasst in ABAP® Core
2
Antw.
18420
Views
Listbox mit Werten aus Itab füllen
von peripe » 22.01.2018 12:22 • Verfasst in ABAP® für Anfänger
3
Antw.
2748
Views
Füllen einer itab mit APPEND
von GAST » 06.12.2004 11:34 • Verfasst in ABAP® Core
2
Antw.
2519
Views
itab mit eigener typendefinition füllen (headerline?)
von Andy » 14.10.2005 09:41 • Verfasst in Web-Dynpro, BSP + BHTML

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor 13 Stunden von Bright4.5 1 / 268
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1907
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8510