平成31年春期 午後問題6
ファイル:2019h31h_ap_pm_qs.pdf
1、図1中のa,bに入れる適切なエンティティ間の関連を解答群の中から選ぶ。
a,bにつきまして、図1だけで、情報不足ですね。
表1も参照して、(1)初回の外来受診の時に、「受信者、外来受診」両方を作成する。且つ、(2)2回目以上の外来受診は、「外来受診」のみ作成する。
つまり、1:Nですね。且つNは >=1 ですね。よって、aの答えは 「カ」ですね。
bは、表1を参照して、(9)初回発注の薬剤の時に、「薬剤、薬剤在庫」両方を作成する。
(10)発注実績のある薬剤の時に、何もしなく、且つ(11)薬剤の入庫の時に、何らかを更新するので、1:1ですね。よって、bの答えは、「ウ」ですね。
2、表1のc,d,表2のe,fに適切なテーブル名、列名を入れて答えよ
cは(5)薬剤併用チェック、(6)在庫チェックで使っていますね。
処方箋の作成に含んでいますね。
処方箋の作成流れ:
1)、(4)処方箋の登録(発行前)
つまり、テーブル「処方箋、処方箋明細」に登録し、「外来受診」に更新する。
2)、薬剤併用と在庫チェックして、登録していた「処方箋、処方箋明細」を見直すとのことですね。「外来受診」に多分、処方箋IDのみを更新するので、チェック処理で見直すのは必要ないですね。なお、チェックNGの場合、異なる成分の薬剤を調整するなどので、変更必要のテーブルは、処方箋明細のみですね。cは「処方箋明細」です。
3)、(7)処方箋(書面)発行
dは(11)薬剤の入庫です。
(9)初回発注の薬剤の時に、テーブル「薬剤の在庫」に薬剤データを作成する、項目「在庫量_大人1日」を0に登録します。
(11)で入庫するときに、テーブル「薬剤の在庫」に薬剤データを更新し、項目「在庫量_大人1日」を入庫量を更新しますね。
なので、dは「薬剤の在庫」ですね。
3、図2のg,hを適切な字句を入れて答えよ。
gは、チェック対象薬剤の副問い合わせですね。
チェック対象薬剤は、受診者の過去6ヶ月の履歴+今回受診の処方箋 ですね。
なので、gはUNIONですね。もちろん、UNION ALLも正しいですね。
hはチェック対象薬剤をベースで、薬剤併用情報を利用して併用情報ありのを抽出しますね。
hは、existsで問題ないですね。
ただ、existsを利用すると、副問い合わせの「SELECT T2.薬剤コード1,T2.薬剤コード2」は、意味がないでしょう。戸惑いのものですね。迷いがなく注意したほうがですね。私は、existsを利用すると、副問い合わせに[Select 1 。。。」というふうに書きますから。
4、図3のi,j,kを適切な字句を入れて答えよ。
ビューには、有効年月日まで確保されるよう、在庫保証を行うための薬剤コードとその在庫量ですね。
有効年月日とは普通の理解でよいですね。つまり、今日より未来ものですね。
よって、j は 「>=CURRENT_DATE」です。
なお、在庫確保が目的ので、つまり、まだ薬剤の受け渡しはしていないですね。
表2により、薬剤処方箋年月日が受け渡しまでは、NULLであるため、kは「IS NULL」ですね。
iは、薬剤コードごとの在庫量ですので、SUM(T3.処方量_大人1日)ですね。これは、GROUP BYよりも左証できますね。
結論
DB問題は、難しくないが、結構間違いしやいですね。
細心の注意を払って、進みましょう。