我目前有一些看起来像这样的表:
create table Actors
(ActorID varchar (20) primary key not null,
FirstName varchar (35) null,
LastName varchar(35) null,
"Address" varchar (30) null,
Country varchar (30) null,
"State/Province" varchar (30) null,
PhoneNumber varchar (15) null
);
去
insert into Actors
values ('A-63','Tom','Hanks','4332 Whalibee Way','US','Washington','555-619-9905') ,
('A-42','Sandra','Bullock','63 Sharridon Ave.','US','Texas','329-556-3030');
go
create table Director
( DirectorID varchar (20) primary key not null,
FirstName varchar (40) null,
LastName varchar(40) null,
MovieID varchar(20) foreign key references Movies (MovieID) null,
"Address" varchar ( 30) null,
Country varchar (35) null,
"State/Province" varchar (35) null,
PhoneNumber varchar (15) null
);
go
insert into Director values
('D700','David','Speilberg','MO-57','9000 Cheque St','US','California','432-553-2267'),
('D-900','William','Bruckheimner','MO-31','68585 lava lane','US','California','519-242-2543');
go
create table Producer
(ProducerID varchar (20) primary key not null,
FirstName varchar (40) null,
LastName varchar (40) null,
MovieID varchar (20) foreign key references Movies(MovieID) null,
"Address" varchar (30) null,
Country varchar (35) null,
"State/Province" varchar (35) null,
PhoneNumber varchar (15) null
);
go
insert into producer values
('P-123','RJ','Abrams','MO-57','45 Canterbelly Cres.','US','California','556-876-4134'),
('P-82','Malcolm','Brooks','MO-62','678 Undertree rd','US','Arizona','897-332-6633');
go
Create table Movies
( MovieID varchar(20) primary key not null,
MovieName varchar (40) null ,
"Type" varchar (20) null,
Rating varchar (20) null,
Director varchar (35) null,
Producer varchar (35) null,
MainActor1 varchar (35) null,
MainActor2 varchar (35) null,
SupportingActor1 varchar (35) null,
SupportingActor2 varchar (35) null,
ReleaseDate Date null,
Description varchar(500) null
);
go
Insert into Movies (MovieID,MovieName,"Type",Rating,Director,Producer,MainActor1,MainActor2,SupportingActor1,SupportingActor2,ReleaseDate,"Description")
values ( 'MO-150','The Legend Of Zelda','Fantasy','R','','','','','','','July 23 2018',''),
( 'MO-216','The SQL Games:Replication','Science Fiction','PG','','','','','None','','March 20 2020','');
go
目前的格式:Robert Downey JR。 姓|姓 本阿弗莱克 克里斯蒂安·贝尔 威尔史密斯 查理兹塞隆 安吉丽娜·朱莉 杰西卡阿尔巴 卡梅隆·迪亚兹 詹妮弗安尼斯顿 布莱德利·库珀 桑德拉·布洛克 莱昂纳多·迪卡普里奥 马特达蒙 克里斯赫姆斯沃思 汤姆汉克斯 米拉库尼斯 Scarlet Johansson 艾玛斯通 朱莉娅罗伯茨
现在我有一个演员,导演和制作人表以及一个电影表,所有表都有自己的ID列和一个带外键的MovieInfo表来链接它们。
我想知道是否有办法制作一个可以取名字和姓氏的视图,并将它们放在一列中,用于演员,制片人,导演和电影专栏,并让他们加入。
所以表格看起来像这样:
演员(col1)制片人(col2)导演(col3)电影(col4) (桑德拉布洛克)(RJ艾布拉姆斯)(大卫斯皮尔伯格)(课后期)
非常感谢任何帮助。我知道如果可以这样做,它可能会非常复杂。
答案 0 :(得分:1)
您可以使用||加入两列的值操作
SELECT FirstName || ' ' || LastName as name FROM Actors
将返回一个名为" name"的列。包含连接在一起的Actors FirstName和LastName列。只需对所有表使用相同的逻辑,当然也要适当加入。