JOIN
์ ์ํด ๊ฐ ํ
์ด๋ธ์ PK
๋ฅผ ๋น๊ตํ๋ค.PK
๊ฐ ๊ฐ์ฅ ์ ์ ํ
์ด๋ธ์ ์ฃผํ
์ด๋ธ
๋ก ์ค์ ํ๋ค.SELECT A.<ํ๋> A.<ํ๋>
B.<ํ๋> B.<ํ๋> B.<ํ๋>
C.<ํ๋>
FROM <์ฃผํ
์ด๋ธ> AS A
INNER
JOIN <์ฐ๊ฒฐํ
์ด๋ธ1> AS B
ON A~<A์B์๊ณตํตPKํ๋> = B~<A์B์๊ณตํตPKํ๋>
AND <JOIN๋์์ ์ ์กฐ๊ฑด๋ฌธ>
JOIN <์ฐ๊ฒฐํ
์ด๋ธ2> AS C
ON B~<B์C์๊ณตํตPKํ๋1> = C~<B์C์๊ณตํตPKํ๋1>
AND B~<B์C์๊ณตํตPKํ๋2> = C~<B์C์๊ณตํตPKํ๋2>
WHERE <์กฐ๊ฑด๋ฌธ>
AND <์กฐ๊ฑด๋ฌธ>.
PK ํ๋
๋ชจ๋ JOIN ON
์ AND
๋ก ๋ฆด๋ ์ด์
์ ์
๋ ฅํ๋ค.AS
๋ก ํ
์ด๋ธ ๋๋ ํ๋์ ๋ณ์นญ์ ์ค์ ํ๋ค. ์์ธํ ๊ฐ๋
์ SQL Alias๋ฅผ ์ฐธ๊ณ .INNER JOIN | LEFT OUTER JOIN | |
---|---|---|
์ฐ์ฐ | AND | OR |
์ฐ๊ฒฐ ๋์ | ITAB | TEXT Table |
๊ฒฐ๊ณผ | ์ฃผํ ์ด๋ธ๊ณผ ์ฐ๊ฒฐํ ์ด๋ธ์ ๊ต์งํฉ | ์ฃผํ ์ด๋ธ๊ณผ ์ฐ๊ฒฐํ ์ด๋ธ์ ํฉ์งํฉ |
๋น ๋ ์ด๋ธ | ์์ | ์ฐ๊ฒฐํ ์ด๋ธ์์ ๋ฐ์ |
JOIN ON
์ <์
๋ ์
> NE ''
๋ฌธ์ ๋ฃ๋๋ค.WHERE
์ ํด๋น ์
๋ ์
์ ์กฐ๊ฑด์ ์
๋ ฅํ์ง ์๋๋ค.<* SELECTION SCREEN ์ ์ธ>
<* ITAB ์ ์ธ>
SELECT a~bukrs a~bstyp a~bsart a~lifnr a~ekorg a~ekgrp
b~ebeln b~ebelp b~matnr b~ematn b~werks b~lgort b~menge b~meins b~netpr
c~maktx d~maktg
INTO CORRESPONDING FIELDS OF TABLE gt_po
FROM ekko AS a
INNER <---------------- ์กฐ์ธ 1 ------>
JOIN ekpo AS b
ON a~ebeln EQ b~ebeln
LEFT OUTER <---------- ์กฐ์ธ 2 ------>
JOIN makt AS c
ON b~matnr EQ c~matnr
AND c~spras EQ sy-langu
LEFT OUTER
JOIN makt AS d <------ ์กฐ์ธ 3 ------>
ON b~ematn EQ d~matnr
AND d~spras EQ sy-langu
WHERE a~bukrs EQ pa_bukr
AND b~ebeln IN so_ebel
AND a~bsart EQ pa_bsar.
ํ
์คํธ ํ
์ด๋ธ
์ด๋ผ๊ณ ํ๋ค.Discribe
ํ๋๊ฐ ์์ผ๋ฉฐ, ๊ธ๋ก๋ฒ ํ๋ก๊ทธ๋จ์ธ SAP๋ ํ๋์ ๋ํ ์ค๋ช
์ ์ธ์ด ๋ณ๋ก ์ ๊ณตํ๋ค. ๋ฐ๋ผ์ JOIN ์ ์ฌ์ฉ์ ์ธ์ด์ ํด๋นํ๋ ์ ๋ณด๋ง ๊ฐ์ ธ์ค๋๋ก ์ค์ ํ์ง ์์ผ๋ฉด JOIN ํ 1๊ฐ์ ์ฃผํ
์ด๋ธ ๋ฐ์ดํฐ์ ๋ํด ์์ด, ํ๊ตญ์ด, ๋
์ผ์ด ๋ฑ ๋ค์ํ ๋ฒ์ ์ ์ค๋ช
์ด ์ ๋ถ ๋ณด์ด๋ ๋ฌธ์ ์ ์ด ์๊ธด๋ค.๊ฐ ํ๋
๋ง๋ค ๋๋ฉ์ธ
-ํ
์คํธํ
์ด๋ธ
-Language Key ํ๋
์ ์
๋ ฅ๋์ด ์๋ค.Language Key ํ๋
๊ฐ ๊ฐ๋ค๊ณ ๋ณผ ์ ์๋ค.SPRAS
๊ฐ ์ธ์ด์ฝ๋๊ฐ ๋ด๊ฒจ์๋ Key ํ๋์ด๋ค.sy-langu
: ์ฌ์ฉ์์ ์์คํ
์ธ์ด ์ค์ ์ ๋ด๋ ์์คํ
๋ณ์์ด๋ค.SELECT a~bukrs a~bstyp a~bsart a~lifnr a~ekorg a~ekgrp
b~ebeln b~ebelp b~matnr b~ematn b~werks b~lgort
b~menge b~meins b~netpr c~maktx d~maktg
INTO CORRESPONDING FIELDS OF TABLE gt_po
FROM ekko AS a
INNER
JOIN ekpo AS b
ON a~ebeln EQ b~ebeln
LEFT OUTER
JOIN makt AS c <" ๊ฐ์ ํ
์ด๋ธ ์ฌ๋ฌ๋ฒ JOIN >
ON b~matnr EQ c~matnr
AND c~spras EQ sy-langu
LEFT OUTER
JOIN makt AS d <" ๊ฐ์ ํ
์ด๋ธ ์ฌ๋ฌ๋ฒ JOIN >
ON b~ematn EQ d~matnr <" ematn๋ matnr์ ๊ฐ์ Material Number ์ด๋ค.>
<" ๋ฐ๋ผ์ ํ
์คํธํ
์ด๋ธ์ ํ๋๊ฐ ๊ฐ๋ค.>
AND d~spras EQ sy-langu.
PK
๋ฅผ ๊ฐ์ฅ ์ ๊ฒ ๊ฐ์ง๊ณ ์๋ ํ
์ด๋ธ.Z
์์ฒด์์ฑ + C5
๋ชจ๋ + V
๋ทฐ + ...
์ง์ ํ์ดํํด๋ ๋์ง๋ง, Realationships
์ ํ์ฉํด๋ณด์.
์ฐ๊ฒฐํ ํ
์ด๋ธ๋ช
์
๋ ฅ ํ, Realationships
์ ํด๋ฆญํด ํ
์ด๋ธ์ ์ฐ๊ฒฐ๋์ด์๋ ํ
์ด๋ธ ๋ฆฌ์คํธ๋ฅผ ๋์ด๋ค
CTRL+F
๋ก ์ํ๋ ํ
์ด๋ธ์ ๊ฒ์ํ๊ณ ๋๋ธํด๋ฆญ
์ฐพ์ ํ
์ด๋ธ์ ์ฒดํฌํ๊ณ COPY
ํด๋ฆญ
์๋์ผ๋ก ์กฐ์ธ ์กฐ๊ฑด์ ์
๋ ฅ๋๋ค
Table Fields
ํด๋ฆญ.CARRID
๊ฐ AZ
์ธ ๋ฐ์ดํฐ๋ง ๋ณด์ด๋๋ก ์ค์ .๊ฐ ํ
์ด๋ธ์ ๋์คํ๋ ์ด๋ฅผ ๋ชจ๋ ์ด์ด๋๋๋ค. ์ฐ์ 2๊ฐ๋ฅผ ์กฐ์ธํ๋ค. 3๋ฒ์งธ ํ
์ด๋ธ๊ณผ ์กฐ์ธํ ๋, ์์ ๋จผ์ ์กฐ์ธ๋ 2๊ฐ์ ํ
์ด๋ธ ์ค 3๋ฒ์งธ ํ
์ด๋ธ๊ณผ Primery Key
๊ฐ ๊ฐ์ฅ ๋ง์ด ๊ฒน์น๋
ํ
์ด๋ธ ํ ๊ฐ๋ฅผ ๊ณจ๋ผ ์กฐ์ธํ๋ค.
PK
์๊ฐ ์ ๋ค๋ ๊ฒ์ ๊ทธ๋งํผ ํฌ๊ด์ ์ธ ํ
์ด๋ธ์ด๋ผ๋ ๊ฒ์ ์๋ฏธํ๋ค.Primery Key
๊ฐ ๊ฐ์ฅ ๋ง์ด ๊ฒน์น๋ ํ
์ด๋ธ๊ณผ ์กฐ์ธํ๋ค.
๋ทฐํ๋์ ์ ๋ ์ ์ปจ๋์ ์ ์์ ๋์ผํ๊ฒ ์งํํ๋ฉด ๋๋ค.
์ข์ ๊ธ ์ ์ฝ์์ต๋๋ค, ๊ฐ์ฌํฉ๋๋ค.