码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2015-01-29 19:24:34      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

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

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

在使用视图时需要注意:

  • 视图中可以包含多张表
  • 视图可以基于视图再次创建
  • 视图也允许增删改
  • 如果排序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%

 

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

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

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

标签:

原文地址:http://www.cnblogs.com/rammderek/p/4260547.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!