2012-09-23 84 views
2

我有一個數據庫,我需要改變。 原始數據庫由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)); 

新表,我需要從Accommodatievervoerscodeplaatscodeland從表vervoer

你能幫我建立一個查詢來填充新表嗎?

+1

在談到3 *列*原始數據庫組成,還有一個*列*需要要延長,你的意思是「3 *表*」,「一*表*」? –

+0

當我談論colums的時候,我打算說表。我是荷蘭人,所以請原諒。 從表容器列的土地和Plaatscode需要存儲在一張名爲Pllatscode從表Vervoer的新表中,需要將表格存儲在表Plaatscode – Gieles72

+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 
+0

我會嘗試它tommorow。 – Gieles72

+0

@KenKeegan謝謝它的工作。 – Gieles72

相關問題