xobQuery:クエリファイル(.sql ファイル)にSQLを記述する

前回記事では、47の都道府県データを全件(全レコード)選択するサンプルをご紹介しました。

xobQuery:DB処理の原型から始めよう https://xoblos.hatenablog.jp/entry/2021/08/02/232238

次に、クエリファイル(.sql ファイル)に記述したSQLで、全件ではなく、関東1都6県のみを選択出力するなど、いくつかパターン登録して実行してみましょう。

コマンドライン引数の3つのパターン

-i INPUT\input.csv/work -h -Q SQL\P1.sql -o OUTPUT\output1.xml

-i INPUT\input.csv/work -h -Q SQL\P2.sql -o OUTPUT\output2.xml

-i INPUT\input.csv/work -h -Q SQL\P3.sql -o OUTPUT\output3.xml

パターン1 関東1都6県

P1.sql

/* パターン1  関東1都6県(茨城、栃木、群馬、埼玉、千葉、東京、神奈川) */

SELECT * FROM work WHERE
			都道府県コード = '08' or 
			都道府県コード = '09' or
			都道府県コード = '10' or
			都道府県コード = '11' or
			都道府県コード = '12' or
			都道府県コード = '13' or
			都道府県コード = '14';

出力結果(output1.xml

f:id:xoblos:20210803202939p:plain

パターン2 四国4県

P2.sql

/* パターン2  四国4県(徳島、香川、愛媛、高知) */

SELECT * FROM work WHERE
			都道府県コード = '36' or 
			都道府県コード = '37' or
			都道府県コード = '38' or
			都道府県コード = '39';

出力結果(output2.xml

f:id:xoblos:20210803203002p:plain

パターン3 東北6県

P3.sql

/* パターン3  東北6県(青森、岩手、宮城、秋田、山形、福島) */

SELECT * FROM work WHERE
			都道府県コード = '02' or 
			都道府県コード = '03' or
			都道府県コード = '04' or
			都道府県コード = '05' or
			都道府県コード = '06' or
			都道府県コード = '07';

出力結果(output3.xml

f:id:xoblos:20210803203029p:plain

更なる課題

それでは問題(課題)を出してみます。

「業務の設定」画面に、入力パラメータ(業務変数)として「パターン番号」(1-3)を設定し、ユーザーが入力できるようにします。

1が入力されたら「パターン1 関東1都6県」、2が入力されたら「パターン2 四国4県」、3が入力されたら「パターン3 東北6県」のクエリ処理が実行され、3通りの出力結果となるよう、手順を組み立ててみましょう。解答は後日掲載します。