ソートマージ

[目次][用語][索引][前へ][次へ]

9.2.4 使用例

選択コマンドの使用例を示します。

<この項の構成>
(1) 1種類の条件式でデータを選択する例
(2) 2種類の条件式でデータを選択する例
(3) ソート処理と組み合わせて選択する例

(1) 1種類の条件式でデータを選択する例

1種類の条件式でデータを選択する例を示します。ここでは,社員データファイルから,年齢が40歳以上のデータを持つレコードを選択する例を示します。

(a) 条件

選択の条件は,次のとおりです。

(b) 入力するコマンド

入力する選択コマンドを次の図に示します。

図9-7 入力する選択コマンド(その1)

[図データ]

(c) コマンドの指定内容

選択コマンドの指定内容を次の表に示します。

表9-17 選択コマンドの指定内容(その1)

入力項目 指定内容
rselect 選択処理のコマンド「rselect」を指定する。
-V 入力ファイルを「可変長順ファイル」で指定する。
-oOUTFILE 選択結果の出力ファイル名「OUTFILE」を指定する。
-sl 比較条件式のオペランド「sl」を指定する。
-z 比較項目の属性を数字項目の「外部10進数」で指定する。
+25-2 比較項目の開始バイト位置を「25」バイト目,バイト長を「2」バイトで指定する。
>= 比較演算子を「条件値と等しいか,または大きい」で指定する。
N'40' 条件値を数値条件値の「40」で指定する。
INFILE 入力ファイル名「INFILE」を指定する。

出力ファイルのファイル編成は,入力ファイルと同じなので,指定を省略します。

(2) 2種類の条件式でデータを選択する例

2種類の条件式でデータを選択する例を示します。ここでは,社員データファイルから,年齢が40歳から50歳までのデータを持つレコードを選択する例を示します。

(a) 条件

選択の条件は次のとおりです。

(b) 入力するコマンド

入力する選択コマンドを次の図に示します。

図9-8 入力する選択コマンド(その2)

[図データ]

(c) コマンドの指定内容

選択コマンドの指定内容を次の表に示します。

表9-18 選択コマンドの指定内容(その2)

項番 入力項目 指定内容
1 rselect 選択処理のコマンド「rselect」を指定する。
2 -V 入力ファイルを「可変長順ファイル」で指定する。
3 -oOUTFILE 選択結果の出力ファイル名「OUTFILE」を指定する。
4 -sl 比較条件式のオペランド「sl」を指定する。
5 -z 第1比較項目の属性を数字項目の「外部10進数」で指定する。
6 +25-2 第1比較項目の開始バイト位置を「25」バイト目,バイト長を「2」バイトで指定する。
7 >= 第1比較演算子を「条件値と等しいか,または大きい」で指定する。
8 N'40' 第1条件値を数値条件値の「40」で指定する。
9 and 論理演算子を「and」で指定する。
10 -z 第2比較項目の属性を数字項目の「外部10進数」で指定する。
11 +25-2 第2比較項目の開始バイト位置を「25」バイト目,バイト長を「2」バイトで指定する。
12 <= 第2比較演算子を「条件値と等しいか,または小さい」で指定する。
13 N'50' 第2条件値を数値条件値の「50」で指定する。
14 INFILE 入力ファイル名「INFILE」を指定する。

出力ファイルのファイル編成は,入力ファイルと同じなので,指定を省略します。

(3) ソート処理と組み合わせて選択する例

選択結果をソートするには,ソートコマンドをパイプで連結します。選択結果をソートする例を示します。ここでは,社員データファイルから,年齢が30歳以上のデータを持つレコードを選択したあと,社員番号でソートする例を示します。

(a) 条件

選択の条件は,次のとおりです。

ソートの条件は次のとおりです。

注※
選択処理と同じ値を指定しなければなりません。
(b) 入力するコマンド

入力する選択コマンドを次の図に示します。

図9-9 入力する選択コマンド(その3)

[図データ]

(c) コマンドの指定内容

選択コマンドの指定内容を次の表に示します。

表9-19 選択コマンドの指定内容(その3)

項番 入力項目 指定内容
1 rselect 選択処理のコマンド「rselect」を指定する。
2 -S 入力ファイルを「固定長順ファイル」で指定する。
3 -L240 入力ファイルおよび出力ファイルのレコード長を「240」バイトで指定する。
4 -sl 比較条件式のオペランド「sl」を指定する。
5 -z 比較項目の属性を数字項目の「外部10進数」で指定する。
6 +25-2 比較項目の開始バイト位置を「25」バイト目,バイト長を「2」バイトで指定する。
7 >= 比較演算子を「条件値と等しいか,または大きい」で指定する。
8 N'30' 条件値を数値条件値の「30」で指定する。
9 INFILE 入力ファイル名「INFILE」を指定する。
10 rsort ソート処理のコマンド「rsort」を指定する。
11 -S 入力ファイルを「固定長順ファイル」で指定する。
12 -L240 入力ファイルおよび出力ファイルのレコード長を「240」バイトで指定する。
13 -oOUTFILE ソート結果の出力ファイル名「OUTFILE」を指定する。
14 -j キーの整列順序を「昇順」,属性を「英数字」で指定する。
15 +10-8 キーの開始バイト位置を「10」バイト目,バイト長を「8」バイトで指定する。

注1
キーの比較はJIS8単位コード体系に従うので,指定を省略します。

注2
出力ファイルのファイル編成は,入力ファイルと同じなので,指定を省略します。