视图中创建索引

--创建索引视图
create view 视图名 with schemabinding 
as
select 语句
go
 
---创建索引视图需要注意的几点
1. 创建索引视图的时候需要指定表所属的架构
--错误写法
create view v_f with schemabinding 
as
select
   a.a,a.b,b.a,b.b
from
   join 
on
   a.id=b.id
go
 
---正确写法:
create view v_f with schemabinding 
as
select
   a.a,a.b,b.a,b.b
from
   dbo.a join dbo.b 
on
   a.id=b.id
go
 
 
2.在创建索引视图的select语句时,不使用*,必须指定具体的列名
--错误写法
create view v_f with schemabinding 
as
select
   *
from
   dbo.a join dbo.b 
on
   a.id=b.id
go
 
---正确写法
create view v_f with schemabinding 
as
select
   a.a,a.b,b.a,b.b
from
   dbo.a join dbo.b 
on
   a.id=b.id
go
 
3.在创建索引视图的select 语句中,不能存在重复的列名,这个不举例了
 
4. 只能为索引视图创建唯一聚集索引
--正确的写法
create unique clustered index ix_uniquetb on v_tb
go
 
--错误的写法 
create clustered index ix_uniquetb on v_tb
go
 
 
原文地址:https://www.cnblogs.com/smile-rain/p/4644839.html