文件結合(JOIN)

JOIN
複數文件結合後可以抽取的功能。

FOCUS的JOIN           FOCUS/DBのJOIN
RDBMS的JOIN           SQL TABLE的JOIN、OPTIMIZATION ON、AFDのKEYS=1以上、MULTIPATH JOIN不可

JOIN的規則、是以TO文件的SUFFIX屬性來決定的。


TO文件結合字段
FOCUS                        INDEX指定必要、1個子段也可結合
SQL TABLE                 INDEX指定不要、可以結合複數字段

JOIN [INNER|LEFT_OUTER] FROM字段1 [AND FROM字段2...] [WITH FROM字段] IN FROM文件 [TAG FROMTAG]
  TO [UNIQUE|MULTIPLE] TO字段1 [AND TO字段2...] IN TO文件 [TAG TOTAG] AS JOIN名
END

JOIN的種類
JOIN有INNER JOIN和OUTER JOIN兩種。
INNER                         JOINJOIN指定字段一致的數據抽取
OUTER                        JOINFROM文件的數據和JOIN指定字段一致的數據抽取

 

各種組合(INNER JOIN or OUTER JOIN)
 JOIN文件SET ALLJOIN KEY的關係UNIQUE/MULTIPLE
INNER JOINFOCUS-FOCUSOFF1:NMULTIPLE
  ON1:N[MULTIPLE]
 RDB-RDBOFF1:1[UNIQUE]
  OFF1:N[MULTIPLE]
OUTER JOINFOCUS-FOCUSON/OFF1:1[UNIQUE]
  ON1:NMULTIPLE
 RDB-RDBON1:1[UNIQUE]
  ON1:N[MULTIPLE]

 數據例

MINGBU(INNER)

工號
7010011
7111689
7115025
7124984
7211875
7222166
7315843
7316019
7316105
7316514

YINGYE(INNER)

營業工號

商品代碼

數量

7111689

CM200

100

7111689

TV650

150

7111689

VH500

200

7315843

CM200

500

7315843

SN300

350

7316514

VH500

300

[INNER JOIN]

SET ALL = OFF
JOIN [INNER] 工號 IN MINGBU TO MULTIPLE 營業工號 IN YINGYE AS J1.


工號營業工號商品代碼數量
71116897111689CM200100
71116897111689TV650150
71116897111689VH500200
73158437315843CM200500
73158437315843SN300350
73165147316514VH500300

[OUTER JOIN]

SET ALL = ON
JOIN LEFT_OUTER 工號 IN MINGBU TO MULTIPLE 營業工號 IN YINGYE AS J1.


工號營業工號商品代碼數量
7010011
71116897111689CM200100
71116897111689TV650150
71116897111689VH500200
7115025
7124984
7211875
7222166
73158437315843CM200500
73158437315843SN300350
7316019
7316105
73165147316514VH500300

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章