接收从几个 iSeries、eServer i5 或 System i5 文件连接的记录

假定两个 iSerieseServer i5 或 System i5 文件,即 INVENTORY 和 SUPPLIERS。请注意,这两个文件都包含包括零件号字段的记录。INVENTORY 文件包含单个零件的库存信息。SUPPLIERS 文件包含有关采购和订购的信息。

您可能希望传输有关零件号、零件名称和要从供应商 51 订购的零件的价格的信息。所需字段包括 PARTNO(SUPPLIERS 文件)、DESCRIPTION(INVENTORY 文件)和 PRICE(SUPPLIERS 文件)。

通过比较 INVENTORY 文件和 SUPPLIERS 文件中的数据,用户可以确定供应商 51 提供了零件号 221 和 231(分别称为 BOLT 和 NUT),并且其价格分别为 30 美分和 10 美分。下表总结了这些信息:
     Field:   PARTNO   DESCRIPTION   PRICE
              ------   -----------   -----
  Record 1:    221     BOLT            .30
         2:    231     NUT             .10

通过使用 iSeries→PC 传输功能将这两个文件中的数据连接起来,可以获得相同的结果。为此,请在 FROM 项中指定两个文件(INVENTORY 和 SUPPLIERS)。对于 SELECT,指定要传输的字段(PARTNO、DESCRIPTION 和 PRICE)。对于 WHERE,指定要传输的记录(SUPPNO = 51 的记录)。

JOIN BY 中重新指定两个文件之间的关系。从这些结果中,用户可以通过检查 SUPPLIERS 文件来确定零件号 221 是由供应商 51 以 30 美分的成本交付的。此外,要确定零件名称,用户必须检查 INVENTORY 文件中的零件号 221 及其产品名称。换言之,用户注意到数据是从 SUPPLIERS 文件和 INVENTORY 文件中的记录连接的,并且这些记录具有相同的零件号。因此,要链接这些文件中的两个记录,这些记录必须具有相同的零件号。

简而言之,要获得此信息,请指定:
库/文件(成员) SUPPLIERS, INVENTORY
JOIN BY PARTNO = PARTNUM
SELECT PARTNO, DESCRIPTION, PRICE
WHERE SUPPNO = 51
ORDER BY PARTNO