0

ここにあるファイルの 1 つが「マルチ フォーマット」です。必要なものをコーディングするにはどうすればよいですか? ファイルは OEIND1 です。このコードは、照会から IBM I ツールによって作成されます。SQL では format を使用できないようです。それでは、唯一の方法は物理ファイルを使用することですか?

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

Multi-format logicals are DDS-only. SQL does not understand how to process these. Use the underlying PF.

于 2013-10-03T01:50:05.907 に答える
1

マルチフォーマット論理ファイルは、複数の物理ファイルへの参照によって作成され、それぞれが独自のフォーマットでレコードを提供します。必要な形式は 1 つだけなので、その形式を含む物理ファイルを使用したいと考えています。

実際に複数の形式からの情報が必要な場合は、関連する物理ファイル、または UNION などを結合します。とにかく、SQLでは、物理を参照する必要があります。フィジカルを指定した場合、オプティマイザはロジカルを評価し、要求したものと一致し、結果を取得する最も効率的な方法であることが判明した場合、自動的に 1 つを使用します。SQE オプティマイザーを信頼してください。

于 2013-10-03T04:02:03.110 に答える