数据定义语言DDL - 视图索引

视图是虚拟表,主要用于方便使用和安全性,如:

  • 按照条件筛选和过滤行
  • 保护敏感数据
  • 降低复杂程度
  • 抽象逻辑数据库

在使用视图时需要注意:

  • 视图中可以包含多张表
  • 视图可以基于视图再次创建
  • 视图也允许增删改
  • 如果排序ORDER BY,则必须使用TOP关键字
  • 不能出现INTO关键字
  • 不能出现变量

创建视图的语法

create view view_detail
as
    select
        g.id as gid, g.name as gname,
        c.id as cid, c.name as cname
    from
        grade g, corse c
        where g.id = c.gradeid
go
create view view_report
as
    select
        gid, count(1) as corseNum
    from view_detail
    group by gid
go

索引是用于提高查询效率的技术,主要有主键索引(自动成为聚集索引)、唯一索引(不允许重复)、聚集索引(一张表只能有一个)、非聚集索引等

创建索引的语句

create nonclustered index idx_studentname on student (name) with fillfactor = 30

其中,fillfactor是填充因子,默认30%

显示指定索引的语句是:

select * from student
with(index=idx_studentname)
where name like %s%

 

创建索引的一些指导原则:

频繁查找的字段
经常作为查询条件的字段
经常排序或者分组的字段
经常作为联接(主外键)的字段
 
在出现下列情况时,一般不需要创建索引,否则会影响执行效率
表中数据比较少
表中字段有固定选项

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。