我有一个我需要改变的数据库。 原始数据库由3个表组成。 现在需要再增加一个表格。
新表的数据来自原始数据库的两个表。 我可以创建表,但我不能用数据填充它。 原始表格是:
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
的{{1}}和land
以及表Accommodatie
中的vervoerscode
。
你能帮我构建一个填充新表的查询吗?
答案 0 :(得分:2)
如果你要做的只是填充你的新表,那么以下内容应该有效:
INSERT INTO Plaatscode
(
plaatscode,
stedenadviseur,
land
)
SELECT
a.plaatscode, v.stedenadviseur, a.land
FROM Accommodatie a
INNER JOIN Vervoer
ON a.plaatscode = v.plaatscode