求助,这个sql语句如何写?

jfy724 2010-09-17 11:03:59
表DVD:
ID name price pubID
1 非诚勿扰 100 1(根据后两个表添加的)
2 唐山地震 200 1
3 西游记 300 3

厂商表 Published
ID name addtime
1 华谊 2010-09-16
2 新画面 2010-09-16
3 中影 2010-09-16

根据如下表和厂商表,把DVD表中的PubID填上:
ID name price type Actor Pub picurl addtime
1 非诚勿扰 100 喜剧 葛优 华谊 pic1.jpg 2010-09-16
2 唐山地震 200 灾难 徐帆 华谊 pic2.jpg 2010-09-16
3 西游记 300 科幻 朱琳 中影 pic3.jpg 2010-09-16
...全文
63 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
kkbac 2010-09-17
牛人.
回复
王向飞 2010-09-17

--> 数据库版本:
--> Microsoft SQL Server 2008 (RTM) - 10.0.1600.22
--> 测试数据:DVD
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'DVD')
AND type in (N'U'))
DROP TABLE DVD
GO

---->建表
create table DVD([ID] int,[name] varchar(8),[price] int,[pubID] varchar(4))
insert DVD
select 1,'非诚勿扰',100,'NULL' union all
select 2,'唐山地震',200,'NULL' union all
select 3,'西游记',300,'NULL'
GO



--> 查询结果
SELECT * FROM DVD
--> 删除表格
--DROP TABLE DVD




--> 数据库版本:
--> Microsoft SQL Server 2008 (RTM) - 10.0.1600.22
--> 测试数据:Published
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'Published')
AND type in (N'U'))
DROP TABLE Published
GO

---->建表
create table Published([ID] int,[name] varchar(6),[addtime] datetime)
insert Published
select 1,'华谊','2010-09-16' union all
select 2,'新画面','2010-09-16' union all
select 3,'中影','2010-09-16'
GO

--> 数据库版本:
--> Microsoft SQL Server 2008 (RTM) - 10.0.1600.22
--> 测试数据:如下表
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'如下表')
AND type in (N'U'))
DROP TABLE 如下表
GO

---->建表
create table 如下表([ID] int,[name] varchar(8),[price] int,[type] varchar(4),[Actor] varchar(4),[Pub] varchar(4),[picurl] varchar(8),[addtime] datetime)
insert 如下表
select 1,'非诚勿扰',100,'喜剧','葛优','华谊','pic1.jpg','2010-09-16' union all
select 2,'唐山地震',200,'灾难','徐帆','华谊','pic2.jpg','2010-09-16' union all
select 3,'西游记',300,'科幻','朱琳','中影','pic3.jpg','2010-09-16'
GO



--> 查询结果
SELECT * FROM Published
--> 删除表格
--DROP TABLE Published

--> 查询结果
SELECT * FROM 如下表
--> 删除表格
--DROP TABLE 如下表

--语句如下:
UPDATE DVD
SET pubID = P.ID
FROM DVD AS D JOIN 如下表 AS R
ON D.ID=R.ID
JOIN Published AS P ON R.Pub=P.name

回复
jfy724 2010-09-17
[Quote=引用 1 楼 jxyxhz 的回复:]
insert into b(a, b, c) select d,e,f from b;


--话说你在非技术区发这些0分帖还上瘾了?
赶快去把这些帖子结了,不要发这来了。
[/Quote]你是mm?
回复
小_虎 2010-09-17
insert into b(a, b, c) select d,e,f from b;


--话说你在非技术区发这些0分帖还上瘾了?
赶快去把这些帖子结了,不要发这来了。
回复
jfy724 2010-09-17
[Quote=引用 3 楼 wxf163 的回复:]
SQL code

--> 数据库版本:
--> Microsoft SQL Server 2008 (RTM) - 10.0.1600.22
--> 测试数据:DVD
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'DVD')
AND type in (N'U'))
DROP TABLE D……
[/Quote]
太感谢你了。。也感谢kkbac。。
回复
相关推荐
发帖
非技术区
创建于2007-09-28

7710

社区成员

.NET技术 非技术区
申请成为版主
帖子事件
创建了帖子
2010-09-17 11:03
社区公告
暂无公告