sql server临时表的使用

背景:

在运维工作当中常常需要使用零时表进行储存一些信息

1.建表语句

CREATE TABLE [dbo].[stu1] (

[sno] int NOT NULL ,
[name] varchar(255) NULL 
)
INSERT INTO [dbo].[stu1] ([sno], [name]) VALUES (N'1', N'tjr1')
INSERT INTO [dbo].[stu1] ([sno], [name]) VALUES (N'2', N'tjr2')
INSERT INTO [dbo].[stu1] ([sno], [name]) VALUES (N'3', N'frfr')

CREATE TABLE [dbo].[stu2] (
[sno] int NOT NULL ,
[age] int NULL 
)
INSERT INTO [dbo].[stu2] ([sno], [age]) VALUES (N'1', N'1')
INSERT INTO [dbo].[stu2] ([sno], [age]) VALUES (N'2', N'2')
INSERT INTO [dbo].[stu2] ([sno], [age]) VALUES (N'3', N'3')
INSERT INTO [dbo].[stu2] ([sno], [age]) VALUES (N'4', N'4')

如何把两张表变成如下结果:

SELECT s2.sno,s2.age,s1.name FROM [dbo].[stu2] s2,stu1 s1
where s1.sno=s2.sno

2.into方式插入零时表当中:

SELECT s2.sno,s2.age,s1.name 
into #test
FROM [dbo].[stu2] s2,stu1 s1
where s1.sno=s2.sno

SELECT * from #test

3.使用update方式插入零时表

drop table #stu
create table #stu(
sno int,
name varchar(50),
age int

)
INSERT into #stu(sno,name)
SELECT sno,name 

from stu1

UPDATE s  set s.age=s2.age  from #stu s  
LEFT JOIN stu2 s2 on s.sno=s2.sno

SELECT * from #stu

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值