创建将来自其他表的多个单元格的数据连接到一个oracle sql的视图

问题描述 投票:0回答:1

我需要创建一个将两个表(游戏和开发人员)结合在一起的视图,并从游戏表中选择gameID gameName和gameDeveloper,并将具有firstname和lastname的gameDeveloper(来自Developers表)替换为一列。 gameDeveloper与developerID相同,但不是故意使用的外键。我只想从包含匹配的developerID的行中选择名字和姓氏,并将它们组合到新视图的一列中。这是我所拥有的:

CREATE TABLE game (
gameID varchar(3) PRIMARY KEY NOT NULL,
gamenameName varchar(30) NOT NULL,
gameDeveloper varchar(3) NOT NULL
);

INSERT INTO game VALUES (1,'RDR2',2);
INSERT INTO game VALUES (2,'GTAV',7);
INSERT INTO game VALUES (3,'PUBG',9);
/
CREATE TABLE developers (
    developerID varchar(3) PRIMARY KEY NOT 
NULL,
    fname varchar(20) NOT NULL,
    lname varchar(20) NOT NULL,
    gameID varchar(3) NOT NULL,
    CONSTRAINT fk_game
    FOREIGN KEY (gameID)
    REFERENCES game (GameID)
);

INSERT INTO developers VALUES 
(1,'Patrick','Kane',1);
INSERT INTO developers VALUES 
(2,'Jonathan','Toews',1);
INSERT INTO developers VALUES 
(3,'Alex','Debrincat',1);
INSERT INTO developers VALUES 
(4,'Andrew','Shaw',2);
INSERT INTO developers VALUES 
(5,'Alex','Nylander',2);
INSERT INTO developers VALUES 
(6,'Oli','Maata',2);
INSERT INTO developers VALUES 
(7,'Calvin','DeHaan',2);
INSERT INTO developers VALUES 
(8,'Brandon','Saad',3);
INSERT INTO developers VALUES 
(9,'Corey','Crawford',3);
INSERT INTO developers VALUES 
(10,'Connor','Murphy',3);
/

CREATE OR REPLACE VIEW chairs AS
    SELECT firstname, lastname
    FROM developer
    INNER JOIN 

我希望决赛桌在映射并组合的最后一个单元格时看起来像这样,但是我对执行该操作感到迷茫。我认为内部联接将是最佳选择?

enter image description here

sql oracle join view
1个回答
2
投票
© www.soinside.com 2019 - 2024. All rights reserved.