ソートマージ
オペランドには,必ず指定するオペランドと任意に指定できるオペランドの2種類があります。
選択処理で使用する機能上のオプションを指定します。選択オプションのパラメタを次の表に示します。
パラメタ | 意味 |
---|---|
-e | 入力ファイルを排他モードでオープンする(ファイル排他)。 |
-i | 出力ファイル名と同じ名前のファイルがすでにある場合,そのファイルの内容が書き換えられるのを防ぐ(既存ファイルの書き換え防止)。 |
-v比較レベル | EBCDIKコードの体系に従ってキーを比較する。
|
-u | 選択条件を満たさないレコードだけを入力する。 |
-q | 出力データがキャッシュファイルに残っている場合,すべてのデータをファイル出力したあと,コマンドを終了する(キャッシュファイルの同期出力)。 |
-B※1 | 比較項目が数値項目の場合,big endian※2の数値として扱う。 |
複数のオプションを指定する場合は,次に示すどちらかの方法で指定します。
この指定は,省略できます。省略した場合は,次のようになります。
なお,選択オプションを指定する場合は,次の点に注意してください。
-vパラメタに指定した値による比較処理については,次のとおりです。
JIS8単位コード体系とEBCDIKコード体系の変換表は,「付録A JIS8単位コード体系とEBCDIKコード体系の変換表」を参照してください。
「-v1」の場合は,入力レコードの比較項目と選択条件式の文字条件値どちらもJIS8単位コードと見なし,EBCDIKコード体系に従って比較します。「-v2」の場合は,入力レコードの比較項目と選択条件式の文字条件値どちらもEBCDIKコードと見なし,EBCDIKコード体系に従って比較します。
コマンドの実行結果を次に示します。
入力ファイルのファイル編成を指定します。
複数の入力ファイルを指定する場合は,指定するファイルをすべて同じファイル編成にしてください。
この指定は,省略できません。必ず指定してください。入力ファイルのファイル編成のパラメタを次の表に示します。
表9-11 入力ファイルのファイル編成のパラメタ(選択機能)
パラメタ | 意味 |
---|---|
-S | 固定長順ファイルを指定する。 |
-V | 可変長順ファイルを指定する。 |
-R | 固定長相対ファイルを指定する。 |
-W | 可変長相対ファイルを指定する。 |
-I | 固定長索引ファイルを指定する。 |
-X | 可変長索引ファイルを指定する。 |
-A | テキストファイルを指定する。 |
出力ファイルのファイル編成を指定します。出力ファイルのレコードの形式(固定長,可変長またはテキスト)は,入力ファイルと同じにしなければなりません。
入力ファイルが順ファイル,相対ファイルまたはテキストファイルの場合,この指定は省略できます。指定を省略した場合は,入力ファイルと同じファイル編成が設定されます。入力ファイルが索引ファイルの場合は,順ファイルまたは相対ファイルのどちらかを必ず指定してください。
出力ファイルのファイル編成のパラメタを次の表に示します。
表9-12 出力ファイルのファイル編成のパラメタ(選択機能)
パラメタ | 意味 |
---|---|
:S | 固定長順ファイルを指定する。 |
:V | 可変長順ファイルを指定する。 |
:R | 固定長相対ファイルを指定する。 |
:W | 可変長相対ファイルを指定する。 |
:A | テキストファイルを指定する。 |
入力ファイル編成ごとのレコード長の指定方法を次の表に示します。
表9-13 入力ファイル編成ごとのレコード長の指定方法(選択機能)
入力ファイル編成 | レコード長の指定方法 |
---|---|
固定長順ファイル | ファイルのレコード長を「1〜65,535」バイトの範囲で指定します。 |
可変長順ファイル | 指定は不要です。指定しても無視されます。 ただし,入力できるレコード長の範囲は,1〜65,535バイトです。 |
固定長相対ファイル | |
可変長相対ファイル | |
固定長索引ファイル | 指定は不要です。指定しても無視されます。 ただし,入力できるレコード長の範囲は,1〜65,503バイトです。 |
可変長索引ファイル | |
テキストファイル | ファイルの最大レコード長を「1〜65,535」バイトの範囲で指定します。レコード長には,改行文字「X'0A'」は含みません。 この指定は省略できます。指定を省略した場合は,「65535」バイトが設定されます。 なお,レコード長を指定した方が,ソート時間が短くなります。 |
選択結果の出力先ファイルをファイル名で指定します。
この指定は,省略できます。指定を省略した場合は,選択結果を標準出力ファイルに出力します。
レコードを選択するための選択条件式を指定します。指定できる条件式の個数は1から32個です。
選択条件式の形式を次の図に示します。
図9-6 選択条件式の形式
比較項目に関する属性を指定します。比較項目の属性のパラメタを次の表に示します。
パラメタ | 意味 |
---|---|
-j | 比較項目が文字(JIS8単位コード※)であることを指定する。 |
-c | 比較項目が文字であることを指定する。 |
-n | 比較項目が符号付き固定小数点2進数であることを指定する。 |
-m | 比較項目が符号なし2進数であることを指定する。 |
-p | 比較項目が内部10進数であることを指定する。 |
-z | 比較項目が外部10進数であることを指定する。 |
-x | 比較項目が左符号付き外部10進数であることを指定する。 |
-s | 比較項目が右分離符号付き外部10進数であることを指定する。 |
-t | 比較項目が左分離符号付き外部10進数であることを指定する。 |
-g | 比較項目が日付(英数字)であることを指定する。 |
比較項目の開始バイト位置を5桁以内の数字で指定します。開始バイト位置はレコードの先頭からのバイト位置(先頭を0とする)とします。開始バイト位置に指定できる値の範囲を次に示します。
また,比較項目のバイト長を4桁以内の数字「1〜4,096」で指定します。この指定は,省略できません。必ず指定してください。
比較項目で指定した値と入力レコードの値を比較,選択する方法を指定します。
この指定は,省略できません。必ず指定してください。
比較演算子のパラメタを次の表に示します。
比較演算子 | 意味 |
---|---|
= | 条件値と等しい値の入力レコードを選択することを指定する。 |
!= | 条件値と異なる値の入力レコードを選択することを指定する。 |
> | 条件値より大きい値の入力レコードを選択することを指定する。 |
>= | 条件値より大きいかまたは等しい値の入力レコードを選択することを指定する。 |
< | 条件値より小さい値の入力レコードを選択することを指定する。 |
<= | 条件値より小さいかまたは等しい値の入力レコードを選択することを指定する。 |
比較の条件となる値を「C'文字条件値'」,「N'数値条件値'」または「D'日付条件値'」の形で指定します。
「C'文字条件値'」は比較項目が文字項目の場合,「N'数値条件値'」は比較項目が数値項目の場合に指定できます。また,「D'日付条件値'」は比較項目が日付項目の場合に指定できます。
指定できる条件値の長さを次の表に示します。
表9-16 指定できる条件値の長さ
項目 | 最小値 | 最大値 | 備考 |
---|---|---|---|
文字条件値 | 1 | 4,096 | − |
数値条件値 | 1 | 19 | 符号なし数値は18 |
日付条件値※ | 2 | 8 | − |
単位:バイト
複数の選択条件式を指定する場合,論理演算子「and」または「or」を指定します。
選択条件中に「and」と「or」が混在した場合は,「and」を判定後,「or」を判定します。「and」と「or」が混在した場合の処理の例を次に示します。
この場合,次のうちどちらかの条件を満たしたレコードが選択されます。
選択の対象となる入力ファイルを指定します。同じファイルを2個以上指定できません。2個以上指定するときは,すべて同じファイル編成とし,それぞれのファイル名は互いに異なっていなければなりません。
また,出力ファイルの指定と同じファイルの指定はできません。
入力ファイルが順ファイル,相対ファイルまたはテキストファイルの場合,この指定は,省略できます。省略した場合は,入力ファイルに標準入力ファイルが設定されます。入力ファイルが索引ファイルの場合は,この指定は省略できません。
All Rights Reserved. Copyright (C) 2008, 2016, Hitachi, Ltd.