始める無料で始める

ネットワーク型データモデルの作成

この最後の演習では、ネットワーク型のデータモデルを作成します。ユースケースとしては、バスがある地点から別の地点へ移動するすべての経路を見つけることが挙げられます。各ルートには出発地と目的地があり、同じ出発地・目的地が複数回登場することもあります。次の画像では、取りうるバスの地点とルートを確認できます。たとえば、San Francisco から New York、または New York から Washington へ移動できます。

あなたの課題は、Trip テーブルを作成し、このテーブルにいくつかのルートを挿入し、最後にテーブルから可能なすべての出発地を選択することです。

この演習はコースの一部です

SQL Server における階層型クエリと再帰クエリ

コースを見る

演習の手順

  • DepartureDestination フィールドを定義し、どちらも NULL を許可しないようにします。
  • Bus 1San Francisco から New York へのルートを挿入します。
  • Bus 9Florida から San Francisco へのルートを挿入します。
  • 可能なすべての出発地を選択します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

CREATE TABLE Trip (   
    -- Define the Departure
  	___ VARCHAR(255) ___ ___,
    BusName VARCHAR(255) NOT NULL,
    -- Define the Destination
    ___ VARCHAR(255) ___ ___,
);

-- Insert a route from San Francisco to New York
___ ___ ___ VALUES ( ___ , ___ , ___);
-- Insert a route from Florida to San Francisco
___ ___ ___ VALUES ( ___, ___ , ___);
INSERT INTO Trip VALUES ( 'San Francisco', 'Bus 2','Texas');
INSERT INTO Trip VALUES ( 'San Francisco', 'Bus 3','Florida');
INSERT INTO Trip VALUES ( 'San Francisco', 'Bus 4','Washington');
INSERT INTO Trip VALUES ( 'New York', 'Bus 5','Texas');
INSERT INTO Trip VALUES ( 'New York', 'Bus 6','Washington');
INSERT INTO Trip VALUES ( 'Florida', 'Bus 7','New York');
INSERT INTO Trip VALUES ( 'Florida', 'Bus 8','Toronto');

-- Get all possible departure locations
SELECT ___ ___ 
FROM ___;
コードを編集して実行