= ー ロ
o ' EF:R1=
品
70 1 F EF:R=5::: THEr~ BEEP: COL::JR 2: PF: 1 NT "F i 1 e not千ound!":GOTロ271O三品80 1F ERL=1670 THEN 8EEP:COLOR 2;PRINT "File alreadv exists!":GOTO 2710 269(1 IF ERL=1680 THEN BEEP:COLOR 2:PRINT ・・Abnormal File Name! ' ERR NO.="; :COLOR 4: PRINT EF:R: GOTO 2710
2700 ON EF:ROR GOTO (1: GOTO 155':' 2710 RE5U門E 155';:'
::72O :0 2730 'EF:R2
274(1 1F EF:L=1850 THEN BEEP: COLOR 2: PRINT ・・Abnロrmal Fェle Name' ERR NO.=";:COLOR 6:PRINT ERR:G口TO 27色。
2750 ON EF:ROR G口TO O:G口TO 1780 2760 RE5UME 1780
2770 ::780 ・ENDC
2790凶1DTH 80.20:0N ERROR GOTO <):PR1NT CHR事(12):
28OO KEY 1. ・・1口ad'・+CHF:事(34) ・kev 1 司chr事{守】 . : (PC‑8O<)1) 2810 KEY 2."auto
2820 KEY :::. CHF:事(13)+", "
28:::0 ドEY 6. "save'・+CHF:事(34)
2840 KEY 7.CHR事(34)+".a"+CHR章、13)
2a5~) KE'i 1 o. "run 11 +CHR事(34) +ooF-C Ot~v ・・ +CHR事(34)+CHR$i13)
286(' :0 remove: mou 円t1:i千 DV then 吊口unt:; ・:(F'C‑8(!1) 1 ) ::870 G05UB ::360:G05UB 23凸0:CON50LE <).20,1,0:END
2880 ・end of F‑CONV '82.10.25 Ver. 1.3 2890 ・end0千 FC守8 :0 83. S. 25 Ver. 2. o
、
問い合わせシステム (QUERY)の紹介
情報処理センター 黒 岩 秀 男 ・ 野 崎 剛 一
1.はじめに
我々は保健管理センターと協力して,昭和58年度入学生を対象とした健康相談票及び健康 診断表のデータ処理を計算機で行った。従来,それらの大量のデータの中から各種の条件に合 致するデータを探し出すことが人手で行われていた。計算機によるデータ処理において,検索 項目が多種で、検索条件の変更に柔軟に対応できるプログラムを作ることは容易なことではない。
そして,突発的な情報要求に対してはなおさらのことである。そこでプログラミングの経験を 持たない人でも簡単な探作でデータベースを検索でき,検索条件の変更に柔軟に対応できる様 にFACOM OSIV/F4の問い合わせシステム rQUERYJを利用した。ここでは,実 際の利用例を通して rQUERYJの主な機能およびデータペースの定義方法などを紹介する。
2 .
端末の操作方法利用例 (以下の・印はENTERキ一入力を示す)
LOGON TSS Fnnnn S(1024) P(INTPROC
L+
①+ PASSWORD ? 三三ZニJ三4砂 ②
KEQ564551 Fnnnn LOGON IN PROGRESS AT 15:‑53:46 JOB NO
=
TSU5618 CN(Ol)READY
A LLOC FILE(SHINDAN) DATA(SHINDAN.DATA
L+
③READY
I NTERACT CO(QUERY) JE F・ ④
JZV4191 N1HONGO CHARACTER CONVERS10N CANNOT BE PERFORME D+
QUE> D B SHINDA
N +
⑤JZX0121 PASSWORD IS M1SS1NG OR 1NVAL1D. REENTER PASSWOR D ‑ ⑥
ぷ三平ニIミ4砂 ⑦
JZX0151 DATABASE SH1NDAN IS OPENED.
QUE> E1ND WH【LENG>180)
・
⑧JZXl131 40 RECORD(S) EX1ST. @ QUE>
検索処理
QUE>
・ . L S
⑩JZX0301 DATABASE SH1NDAN 1S CLOSED.
QUE> 量五且旦。 ⑪ READY
L旦♀旦五五・ ⑫ RETURN CODE 0000
KEQ564701 Ennnn LOGGED OEE AT 15:59:11 ON OCTOBER 26
,
1 983+KEQ541001 SESS10N ENDED
事 * 車
説明
① TSSセッションを開設するコマンド。 SIZEオペランドは10 2 4 Kバイトを指定する のが望ましい。さらにPROCオペランドは省略不可。
② 課 題 番 号Fnnnnに対するパスワードの入力。
③ これから使用するデータセットの割り当てを行う。
④ INTERACTのコ.ーポレートQUERYを起動する。
⑤ ファイル名SHINDANの利用を開始する。
⑥ SHINDANファイルの参照又は更新パスワードの入力促進メッセージ。
⑦ 参照文は更新パスワードの入力。
⑧ QUERYコマンドのlつであり,この場合,身長が18 0 cmより大きい者の人数を求める。
⑨ 4 0人いたというメッセージ。
⑩ FINISHコマンドの省略形であり,使用中データベースの使用を終了する。
⑪ INTERACTセッションを終了する。
⑫ TSSセッションを終了する。
3 機能の説明
QUERYシステムには別表1に示す機能があるが,ここではその一部を実例を通して紹介する。
① データベースの定義情報を表示する。 (SHOWコマンド)
②条件を満足するレコードの件数を求める。 (F1 N Dコマンド)
③ さらに条件を追加し,その条件を満足するレコードの件数を求める。 (ADDコマンド)
④ レコード中の必要な項目の内容を印刷する。 (PR 1 N Tコマンド)
⑤ 印刷時にタイトルを付ける。 (REPORTコマンド)
⑥検索結果に対する統計データ加工値を求める。 (PS AMMARYコマンド)
⑦ メモスペースの利用と配列の演算。 (TSAMMARY,LET, PUTコマンド)
⑧ 他のデータベースの情報を取り出す。 (EQUATEコマンド)
⑨データベースの内容を更新する。(RETR1 EVE, UPDATEコマンド)
⑬ 条件を満足するレコードの必要な項目の情報を取り出し新しくデータセットを作成する。
(SAVEコマンド)
(1) データベースの定義情報を表示する。 (SHOWコマンド)
データベースがオープンされ,使用可能な状態に芯った後, これから使用しようとするデータ ベースの定義情報を見る。
QUE>
. s 且 旦 . w . ・
車 事 車 INFORMATION OF DATABASE (SHINDAN) * 車 車 RECORD NAME
SHINDAN
ITEM NA問E GBAN Fl F7
HU﹁
ζ a u R M E ' F '
DGT F3 FNO
SEX F4 KIOU
BIRTH F5 Kl
(2) 条件を満足するレコードの件数を求める。 (F1 N Dコマンド) 例 工学部の学生のうち尿糖陽性者(+‑+++)の者の数を求める。
QUE>
E
IND WHERE(NY02,
=O&BU=6>+JZXl131 4 RECORD(S) EXIST.
① 旦1N♀ WHERE以下に示される条件を満足する人の数を探すコマンド。
② 主 且L且.E.: 直 後 の ( )内に条件式を記述する。
Fh u n4 d
③ N Y02‑,
= n :
尿糖が以外という条件式。
且エ♀2.: 尿糖の項目名(別表
2
を参照)。ユ三: 比較漬算子(別表3を参照) 左辺と右辺が等しくないという意味。
ヰ: 尿糖のマイナスはOとして登録してある。
④ & : 論理演算子(論理積)。
⑤五五二丘: 学部コードが
6
という条件,つまり工学部を指定している。(3) 条件を追加しその条件を満足するレコードの件数を求める。 (ANDコマンド) 例 (2 )の例の条件に,さらに家族歴に糖尿病がある者の数を求める。
QUE>
A
ND F6=1.JZXl131 QUE>
1 RECORD(S) EXIST.
① A且旦:検索条件の追加と条件の合致するレコード件数を端末へ出力するコマンド。
②..E..6.三.1:家族歴の糖尿病〈項目名F6)がある〈値=1)という条件式。
(4) レコード中の必要な項目の内容を印刷する。 (PRINTコマンド〉
例 肥 満 度 が20%以上の者の学生番号、身長、体重および肥満度を画面に表示する。
QUE> PRINT LENG WEIG HI凹
a
凶HERE(HI白血>=20) [SYSOUT(A N)JGBAN LENG 'WEIG HIMA 18046 175.0 98.5 45.98 18220 150.6 58.5 28.46 18327 159.1 68.0 27.84 18358 157.5 62.5 20.77 18406 153.1 59.5 24.50 18437 172.0 78.5 21.14 18514 162.7 79.0 40.00 28083 169.3 75.0 20.25 28304 166.1 80.0 34.48
①旦R.l且工: 検索レコード群を端末文はラインプリンタへ出力するコマンド。
② G BAN. LENG. WEIG. HIM A:
出力させたい項目の項目名であり、それぞれ学生番号、身長、体重、肥満 度を指定している。
③ WHERE (H IMA>=2 0)
肥満度が20%以上の者という条件を指定している。
③ S YSOUT (A N)
ラインプリンタへ出力する場合に指定する。省略すると端末に出力される。
ム:シスアウトクラス
N:日本語の出力を行う場合に "N"を指定する。
(5) 端末又はラインプリンタに出力する情報にタイトルをつける。(REPORTコマンド) 例 体格というタイトルを付けて検索レコード群の端末へ出力する。
QUE> R EPORT ABCD LINE(20) 凶IDTH(40) T ITLE('イホナヌ 'NK 1 10
。 〉
QUE> P RINT GBAN LENG WEIG HIMA WHERE(HIMA>=20) T ITLE(ABCD
L+
GBAN
18046 18220 18327
体格 しENG
175.0 150.6 159.1
WEIG
98.5 58.5 68.0
HIMA
45.93 28.46 27.84
① R EPOR T:端末又はラインプリンタに出力する場合のタイトルの情報を定義しておく コマンド。
② ム 主 ♀ ♀ : タイトル情報を識別するための名前で、英字で始まる8文字以内の英数字 列を指定する。
③ L 1 NE (タ 0)
端末又はラインプリンタに出力する場合のlぺージの行数を指定する。
④ W IDTH (40)
端末又はラインプリンタに出力する場合のl行の桁数を指定する。
‑37‑
⑤ TITLE ('王ホ土ヌ. N K 1 0)
タイトル情報と出力する位置を指定する。
'イホナヌ. NK:
'体格'の日本語KISコード指定。
1Jl : 1行目、 10桁目に出力する指定。
⑥ 工 l工L E (ABCD)
出力時にタイトル識別名をPRINTコマンドのオペランドとして指定す る。
(6) 検索結果に対する統計データ加工値を求める。 (PS UMMARYコマンド)
例蛋白が++の者の人数を学部別男女別に求める。
QUE> P S BU BR(1) SEX BR(2) GBAN SU(CNT) 凶H(NY01=21+
J SIく3401 1N 28 OUT 28
JSK3501 END OF SORT/MERGE T1ME = 15.34.18
B U 性別 GBAN
件数
l
男2
女
6
8
2 男 3
女 3
6
① 旦 立 : PSUMMARYコマンドの省略形。
② B U B R (1) SEX B R (2)
コントロールブレークの指定。この場合,学部別 (BU) さらに男女別 (S EX)に集計することを指定している。
学生番号の出現回数を求めることを指定している。
CNTの他,下記の指定が可能である。
TTL 合計値 AVG 平均値
MAX 最大値
MIN 最小値
④ W H (NY01=ヌ}
蛋白(項目名NYO1)が++ (コード=2)という条件を指定。
(7)メモスペースの利用と配列の漬算
メモスペースとは,機能的に異なるコマンドで共同して利用できるように用意されたものであ り,検索レコード件数などの中間結果をメモスペースに記憶しておき,それらのデータを加工し,
その結果を端末またはラインプリンタに出力するなどの利用方法がある。
例
A
,B
,O
,AB
の血液型の者の人数とパーセントを学部別に求める。( i )
TSAMMARY
コマンドにより学部別の人数を求め,メモスペースへ保存する。メモスペー スiこはNという名前で一次元〈要素数7)の配列データとして保存される。(ii)TSAMMARY
コマンドによりA
,B
,O
,AB
の血液型の者の人数を学部別に求め,メモス ペースへ保存する。メモスペースにはBN
という名前の二次元の配列データ(ア行5
列〉と して保存される。この場合,A
,B
,O
,AB
の4
列のはずであるが,血液型不明の学生は空 白を登録しているため,5列になる。( i i
i>LET
コマンドによりパーセントを求めPという名前の二次元の配列データ( 7
行5
列〉とし て保存する。(iv)