< 前へ | 次へ >

テーブルを使った SELECT ステートメントの作成

この学習では、SQL 照会ビルダーを使用して、VIDEOS データベース用の SELECT ステートメントを作成して、必要なデータベース・テーブルをそのステートメントに追加してから、それぞれのテーブルに別名を割り当てます。

SELECT ステートメントの作成

「新規 SQL または XQuery スクリプト」 ウィンドウでステートメント・タイプを選択することによって、SELECT、INSERT、UPDATE、DELETE、FULLSELECT、または WITH ステートメントを作成できます。それでは、 VIDEOS データベース用の SELECT ステートメントを作成しましょう。

SELECT ステートメントを作成するには、次のようにします。

  1. 「データ・プロジェクト・エクスプローラー」ビューで、「VideoStoreProject」 プロジェクトの「SQL スクリプト」 フォルダーを右クリックしてから、「新規」 > 「SQL または XQuery スクリプト (SQL or XQuery Script)」 をクリックします。
  2. 「新規 SQL または XQuery スクリプト」 ウィンドウで、 ステートメント名に customerRentals と入力します。
  3. 「編集の方法」 の下で、「SQL 照会 ビルダー」 オプションを選択します。 SELECT ステートメント・タイプがデフォルトで選択されます。
  4. 「完了」 をクリックします。
以下に示されているように、SELECT ステートメントがテンプレートから作成され、SQL 照会ビルダーで開きます。

SQL 照会ビルダーの SELECT ステートメント・テンプレート

SQL 照会ビルダーには、以下の 3 つのペインがあります。

SQL ソース
この上部のペインには、ビルド中のステートメントの SQL ソースが表示されます。
この真中のペインでは、ステートメントが追加されるテーブルとテーブル列が表示されます。
設計
この下部のペインは、ステートメントの文節の詳細を提供するために使われます。 このペインは、編集対象のステートメント・タイプに応じて変化します。

このチュートリアルでは、これらすべてのペインを使用します。

「データ・プロジェクト・エクスプローラー」ビューに加えて、SQL 照会ビルダーにより、次の 3 つのビューを使用できます。

アウトライン
現在、作業しているステートメントが表示されます。例えば、副選択や共通のテーブル式 が組み込まれる可能性のある、WITH や FULLSELECT などのより複雑なステートメントの場合、 「アウトライン」ビューで、ステートメントの構造が表示されます。
データ・ソース・エクスプローラー
このビューには、定義されている各データ接続が表示されます。 SQL 照会ビルダーで SQL ステートメントにテーブルを追加する場合、接続の下の「テーブル」フォルダーをソースとして使用できます。
SQL 結果
実行中の SQL ステートメントに関連する、メッセージ、パラメーター、および結果を表示します。

作成した SELECT ステートメントが SQL 照会ビルダーに既に開かれているので、その構成を続行することができます。 このチュートリアルで作成するのは SELECT ステートメントだけですが、SQL 照会ビルダーの「SQL ソース」ペイン、「テーブル」ペイン、および「設計」ペインを使用して、INSERT、UPDATE、DELETE、FULLSELECT、および WITH SQL ステートメントを作成することもできます。

ステートメントへのテーブルの追加

次は、customerRentals 照会のために、3 つのテーブルを SELECT ステートメントに追加します。 ビデオ店の店員がある特定の顧客がレンタルしたビデオのタイトルと、ビデオの返却予定の曜日を 検索できる照会を作成することにします。照会には、CUSTOMERS、RENTALS、および VIDEOS というテーブルを組み込む必要があります。
CUSTOMERS テーブルには、ビデオ店から借りているそれぞれの人の名前と ID (識別番号) が含まれています。 VIDEOS テーブル内のデータには、ID と各ビデオのタイトルが含まれます。 RENTALS テーブル内のデータには、現在レンタルされているそれぞれのビデオについて、顧客 ID、ビデオ ID、返却予定日といった情報を含みます。

ステートメントにテーブルを追加するには、次のようにします。

  1. 「データ・ソース・エクスプローラー」ビューで、「VIDEOS」 データベース・ツリーの「XMLTEST」 スキーマを展開してから、「テーブル」フォルダーを展開します。 データベースのテーブルを見ることができます。

    VIDEOS データベースのテーブル

  2. 「CUSTOMERS」 テーブルを、「データ・ソース・エクスプローラー」ビューから SQL 照会ビルダーの「テーブル」ペインにドラッグします。 CUSTOMERS テーブルが「テーブル」ペインに表示され、「SQL ソース」ペインのソース・コードには、SELECT ステートメントでの CUSTOMERS テーブルの追加が表示されます。
  3. 下の図のように、SQL 照会ビルダーの「SQL ソース」ペインの中で XMLTEST.CUSTOMERS の後に ,xmltest.rentals を (最初のコンマを含めて) 入力します。 次に「SQL ソース」ペインの外側の任意の部分をクリックします。

    SQL 照会ビルダー - 「SQL ソース」ペインに ',xmltest.rentals' というテキストを入力した状態の表示

    変更されたステートメントが解析され、有効であると判別されると、RENTALS テーブルが「テーブル」ペインに追加され、「SQL ソース」ペインのコードがフォーマットされます。

  4. 「テーブル」ペインの中で右クリックしてから、ポップアップ・メニューの「テーブルの追加 (Add Table)」をクリックします。
  5. 「テーブル名」 リストで、XMLTEST スキーマ展開し、VIDEOS を選択してから、「OK」をクリックします。 VIDEOS テーブルが「テーブル」ペインに追加され、「SQL ソース」のソース・コードは、SELECT ステートメントでの VIDEOS テーブルの追加を示します。
これで、3 つのテーブルがすべて「テーブル」ペインに表示されました。「SQL ソース」ペインのソース・コードに、対応する変更があることに注目してください。

SQL 照会ビルダー - 追加されたテーブルが「テーブル」ペインに表示され、そのテーブルに対応するコードが「SQL ソース」ペインに表示されているところ

テーブル別名の追加

次は、SELECT ステートメントのそれぞれのテーブルの別名を作成します。別名は、 テーブルを参照する間接的な方法で、そのテーブルの修飾名から SQL ステートメントが独立したものになりえる方法です。 テーブル名が変更された場合は、別名定義も変更しなければなりません。
テーブルの別名の追加は、「テーブル」ペインのテーブル・ポップアップ・メニューを使用して、 ユーザーがテーブルをステートメントに追加するときや、テーブルの追加後に、行うことができます。 また、このテーブル・ポップアップ・メニューは、テーブルを削除したり、テーブルとテーブルの結合を作成したりする ときにも使用できます。

CUSTOMERS、RENTALS、および VIDEOS テーブルの別名は、それぞれ CR、および V にします。

テーブルの別名を追加するには、次のようにします。

  1. 「テーブル」ペインで、CUSTOMERS テーブル内のヘッダーを右クリックしてから、ポップアップ・メニューの 「別名の更新」をクリックします。
  2. 「テーブル別名の変更」ウィンドウで、C をテーブルの別名として入力してから、「OK」をクリックします。 「テーブル」ペインで、CUSTOMERS テーブルのヘッダーに別名が表示されます。「SQL ソース」ペインでは、別名は、CUSTOMERS テーブルの AS C というコードで表されます。
  3. RENTALS (R) と VIDEOS (V) テーブルの別名を追加するため、ステップ 1 と 2 を繰り返し実行します。
< 前へ | 次へ >

フィードバック