学課 1.3: 結果列を指定する
開始する前に、ユーザーは 学課 1.2: 表を含む SELECT ステートメントを作成する を完了する必要があります。
この学課では、どの列を照会結果に表示するかを指定します。
店員は、顧客名、顧客がレンタルしている各ビデオのタイトル、各ビデオの返却予定曜日、などをを見る必要があります。
ユーザーは、2 つの列と 3 つ目の列の CASE 式をインクルードし、それから別名を CASE 列式に割り当てます。
結果列セット用の列を選択する
ユーザーは、下記の列を顧客名およびビデオ・タイトル用の結果列セットに追加します。
- CUSTOMERS 表内の NAME 列
- VIDEOS 表内の TITLE 列
- 表ペイン内で「C(CUSTOMER)」表内の「NAME」チェック・ボックスを選択する。
- 設計ペイン内の列ページで、「列 (Column)」列内の最初の空のセルをダブルクリックし、リスト内の「V.TITLE」をクリックしてから Enter (キー)を押す。
列は SQL ソース・ペイン内の SQL ソース・コードに追加されます。
CASE 式を結果列セットに追加する
照会結果セットの 3 番目の列は列式の結果になります。
ビデオ店データベースには、ビデオの期限日が DATE 形式で保管されています。
DATE 形式は、ビデオの期限の曜日を含む文字ストリングに変換する必要があります。
データベース関数は、曜日に対応する日付から整数を取得します。
関数を評価して関数から戻された整数を各曜日の文字ストリングに変換をするために CASE 式を使用します
(たとえば、照会結果において 1 が "Sunday" に変換される)。
ユーザーは、CASE 式をビルドするために以下のアクティビティーを行います。
- 式ビルダー・ウィザードを開く。
- 単純型の CASE 式を作成する。
- CASE 式を使用して評価するために DAYOFWEEK 関数を追加する。
DAYOFWEEK 関数によって DATE 列から曜日を取得することができるようになる。
この関数は、曜日に対応する整数を戻す。
- CASE 式のための結果を作り出すために WHEN 文節を追加する。
- 設計ペイン内の列ページ上で、「列 (Column)」列 (最初の空のセル) 内の 3 番目のセルをダブルクリックし、リストの最後の
ビルド式 をクリックしてから Enter (キー) を押す。
「式ビルダー」ウィザードが開く。
- 単純型の CASE 式を作成する。
- 式ビルダー・ページ上で「CASE - 検索または単純型」をクリックして、それから「次へ」をクリックする。
- CASE オプション・ページ上で「単純 When 節」をクリックしてから「次へ」をクリックする。
- DAYOFWEEK 関数を追加する:
- 単純型ページ上での「CASE」リスト内で、「ビルド関数式」をクリックする。
「関数式ビルダー」ウィザードが開く。
- 「関数カテゴリーを選択」リスト内で「日付と時刻」をクリックする。
- 「関数を選択」リスト内で「DAYOFWEEK」をクリックする。
- 「関数シグニチャーを選択」リスト内で「DAYOFWEEK(DATE) --> INTEGER」をクリックする。
関数シグニチャーは、関数が 1 つの引数を必要としていることを示す。
- 引数表の「値」列内でセルをクリックし、リスト内の R.DATE をクリックして、それから Enter (キー) を押す。
関数式の構文は以下の画面取りのセクション 5 に示されているように、DAYOFWEEK(R.DATE) である。

- 「終了」をクリックして CASE 式の組み立てに戻る。
新規関数は「単純型 CASE」ページのトップにある「CASE」リストに」に表示される。
- 7 つの WHEN 文節を CASE 式に追加 (各曜日ごとに 1 つ) して DAYOFWEEK 関数から戻された整数を文字ストリングに変換する。
以下の表は、DAYOFWEEK 関数から戻された各々の値に必要な文字ストリングを示す。
DAYOFWEEK 値
| 結果となる文字ストリング
|
1 |
'日曜日' |
2 |
'月曜日' |
3 |
'火曜日' |
4 |
'水曜日' |
5 |
'木曜日' |
6 |
'金曜日' |
7 |
'土曜日' |
- 表内の「式」列の空のセルを「WHEN」の右側でダブルクリックして、それから整数 1 を入力する。
この表や SQL ビルダーに関連する他の表にデータを入力する場合、入力を有効にするために、セルに値を入力した後に Enter (キー) を押すか、
または別のセルにフォーカスを変える。
- 「結果式」列内の空のセルを「THEN」の右側でダブルクリックして '日曜日'ストリングを入力する。
- 残りの 6 つの曜日については、「WHEN 文節を追加」をクリックしてステップ 4a および 4b を繰り返してユーザーの表をここに示す画面取りに似せる。

- 「終了」をクリックして式ビルダー・ウィザードを閉じる。
完了した CASE 式は設計ペインの列ページ上の列式のリストに表示され、また SQL ステートメント・ソース内にも表示されます。
列別名を追加する
ユーザーは、customerRentals SQL ステートメント内に CASE 列式用の列別名を追加します。
SQL ビルダーの設計ペイン内の列ページを使用します。
- 設計ペイン内の「列」タブをクリックする。
- CASE 列式の次の「別名」列内のセルをクリックし、そして「DUEDAY」を入力する。
SQL ソース・ペイン内に、列別名「AS DUEDAY」が CASE 式の後に表示される。
照会を実行すると、この別名は結果表内に列のタイトルとして現れます。
列ページはこのように見えます。

ユーザーはここで 学課 1.4: 結合、照会条件、GROUP BY 文節を追加する を開始する準備ができました。