0

这里的文件之一是“多格式”。我如何编写我需要的代码?该文件是 OEIND1,此代码是由 IBM I 工具从查询中创建的。我看到你不能在 SQL 中使用格式。那么唯一的方法是使用物理文件吗?

SELECT
   ALL       T01.OHORDD, T03.IHINV#, T01.OHORDT, T01.OHJOB3, T01.OHORD#,
             T02.IDPRLC, T02.IDNTU$*(IDSHP#) AS EXTSHP, T02.IDPRT#
   FROM      ASTDTA/OEORHDOH T01 LEFT OUTER JOIN
             ASTDTA/OEIND1 T02
   ON        T01.OHORD# = T02.IDORD# LEFT OUTER JOIN
             ASTDTA/OEINHDIH T03
   ON        T01.OHORD# = T03.IHORD#
   WHERE     T01.OHOSTC = 'CL'
     AND     T01.OHORDD >= 20120101
   ORDER BY  T01.OHORD# ASC
4

2 回答 2

1

多格式逻辑仅适用于 DDS。SQL 不明白如何处理这些。使用底层 PF。

于 2013-10-03T01:50:05.907 回答
1

多格式逻辑文件是通过引用多个物理文件创建的,其中每个文件都以自己的格式提供记录。您只需要一种格式,因此您想使用包含该格式的物理文件。

如果您确实需要多种格式的信息,请加入相关的物理文件,或者可能是 UNION 等。在 SQL 中,无论如何您都应该指代物理。如果您指定了物理,优化器将评估逻辑,如果它与您的请求非常匹配,并且是获得结果的最有效方式,则自动使用它。相信 SQE 优化器。

于 2013-10-03T04:02:03.110 回答