一、视图
1)创建视图
create view [view_name]
as
[select express]
2)示例:
create view good_stu
as
select stu.* from student s,grade g where s.id=g.sid and g.score>80
3)执行
select * from [view_name]
二、临时表
特点:临时表存储在tempdb中,当不再使用时会自动删除
1)本地临时表
create table #[table_name]
(columns...)
--插入数据
insert into #[table] values (...)
insert into #tt select id,name from student;
可见性:只在当前数据库连接可见;
2)全局临时表
create table ##[table_name]
(columns...)
可见性:全局可见
三、表变量
使用场景:在一个存储过程中存储多段结果集
1)声明
declare @tmp table --声明表变量
(
id int identity(1,1), --字段 必须和插入表变量里的数量一一对应
Name varchar(60),
[Description] varchar(60),
Category varchar(60)
)
2)插入数据
insert @tmp select col1,col2,col2.... from [table_name] where [express]
在select投影的字段名称和顺序必须与表变量中的一致
四、比较