3

変更する必要のあるデータベースがあります。元のデータベースは3つのテーブルで構成されています。もう1つのテーブルで拡張する必要があります。

新しいテーブルのデータは、元のデータベースの2つのテーブルから取得されます。テーブルを作成することはできますが、データを入力することはできません。元のテーブルは次のとおりです。

create table Accommodatie
(plaatscode       varchar(3)  not null,
 accommodatienr   numeric(3)  not null,
 accommodatiename varchar(25) not null,
 adres            varchar(25) not null,
 plaatsnaam       varchar(20) not null,
 land             varchar(20) not null,
 email            varchar(30) null,
 internet         varchar(30) null,
 contactpersoon   varchar(25) null,
 primary key (plaatscode, accommodatienr));

create table Vervoer
(vervoercode    numeric(5)   not null,
 plaatscode     varchar(3)   not null,
 stedenadviseur varchar(20)  not null,
 vervoersoort   varchar(12)  not null,
 maatschappij   varchar(15)  not null,
 omschrijving   varchar(50)  not null,
 overstap       varchar(30)  null,
 primary key (vervoercode));

create table Vervoerprijs
(vervoercode  numeric(5)    not null,
 seizoen      varchar(6)    not null,
 prijs        numeric(6,2)  not null,
 plaatscode   varchar(3)    not null,
 primary key (vervoercode, seizoen),
 foreign key (vervoercode) references Vervoer(vervoercode));

新しいテーブルは次のようになります。

CREATE TABLE Plaatscode
(   plaatscode      varchar(3)  not null,
    stedenadviseur  varchar(20) not null,
    land            varchar(20) not null,
    PRIMARY KEY (plaatscode));

新しいテーブルの場合、テーブルから、およびplaatscodeテーブルから必要です。landAccommodatievervoerscodevervoer

新しいテーブルにデータを入力するためのクエリを作成するのを手伝ってもらえますか?

4

1 に答える 1

5

新しいテーブルにデータを入力するだけの場合は、次のように機能するはずです。

INSERT INTO Plaatscode
(
  plaatscode,
  stedenadviseur,
  land
)
SELECT
a.plaatscode, v.stedenadviseur, a.land
FROM Accommodatie a
INNER JOIN Vervoer
ON a.plaatscode = v.plaatscode
于 2012-09-23T19:11:31.760 に答える