Code: Alles auswählen.
VBRK~VBELN VBRK~FKART VBRK~VBTYP VBRK~VKORG VBRK~FKDAT
VBRK~KUNRG VBRK~KUNAG
VBRP~FKIMG VBRP~VRKME VBRP~FBUDA VBRP~NETWR VBRP~ARKTX
VBRP~MATKL VBRP~AUFNR
KNA1~NAME1
FROM VBRK AS VBRK
JOIN VBRP AS VBRP
ON vbrp~vbeln = vbrk~vbeln
JOIN kna1 AS kna1
ON kna1~kunnr = vbrk~kunrg
INTO CORRESPONDING FIELDS OF TABLE it_objekte
WHERE
AND vbrk~fkDAT IN pa_fkdat
AND vbrk~kunrg IN pa_kunrg.
Hi black_adept,black_adept hat geschrieben:Was ist denn der "Kunde" - Auftraggeber und Regulierer stehen doch schon in der VBRK - was brauchst du denn da noch?
Einspruch!DeathAndPain hat geschrieben:Ja, das ist der einzige andere existierende Verwendungszweck.
Naja soviel anders ist der nested select auch nicht wie das was von DeathAndPain genannte Join-Beispiel :ewx hat geschrieben:Einspruch!DeathAndPain hat geschrieben:Ja, das ist der einzige andere existierende Verwendungszweck.
http://www.tricktresor.de/blog/untersch ... eintraege/
Zusätzlich ist aber noch zu sagen, dass wann immer möglich man sinvolle oder gar beschreibende aliase benutzen sollte. z.B. wenn die Tabelle LIKP in einem join für An- und Auslieferungen gelesen wird, so ist 'AS LIKP_J' und 'AS LIKP_7'' eine passende Variante. Finde ich besser wie LIKP1 und LIKP2 (vor allem wenn man aus Optimierungsgründen auf select * verzichtet und dadurch ein select-statement auch gerne mal 50+ Zeilen lang wird..)DeathAndPain hat geschrieben:[...] AS braucht man nur, wenn man den Tabellen innerhalb des WHERE-Blocks (bzw. ON-Blocks) andere Namen zukommen lassen möchte. Wirklich notwendig ist dies nur, wenn man dieselbe Tabelle mit sich selber per JOIN verknüpfen möchte, so dass der Name der Tabelle keine eindeutige Angabe mehr darstellen würde.[...][/i]
Das stimmt. Das ist das gleiche Beispiel.Somani hat geschrieben: Naja soviel anders ist der nested select auch nicht wie das was von DeathAndPain genannte Join-Beispiel :DeathAndPain hat geschrieben:[...] AS braucht man nur, wenn man den Tabellen innerhalb des WHERE-Blocks (bzw. ON-Blocks) andere Namen zukommen lassen möchte. Wirklich notwendig ist dies nur, wenn man dieselbe Tabelle mit sich selber per JOIN verknüpfen möchte, so dass der Name der Tabelle keine eindeutige Angabe mehr darstellen würde.[...][/i]
Es gibt noch mindestens einen weiteren, recht exotischen Fall, der auch zwingend einen Alias verlangt.DeathAndPain hat geschrieben:Wirklich notwendig ist dies nur, wenn man dieselbe Tabelle mit sich selber per JOIN verknüpfen möchte, so dass der Name der Tabelle keine eindeutige Angabe mehr darstellen würde.
Code: Alles auswählen.
SELECT * UP TO 10 ROWS
INTO TABLE gt_dd03l
FROM dd03l
WHERE domname = dd03l~rollname
AND tabname LIKE 'T%'.
Code: Alles auswählen.
SELECT * UP TO 10 ROWS
INTO TABLE gt_dd03l
FROM (p_table) AS x
WHERE domname = x~rollname
AND tabname LIKE 'T%'.