视图是虚拟表,主要用于方便使用和安全性,如:
- 按照条件筛选和过滤行
- 保护敏感数据
- 降低复杂程度
- 抽象逻辑数据库
在使用视图时需要注意:
- 视图中可以包含多张表
- 视图可以基于视图再次创建
- 视图也允许增删改
- 如果排序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%‘
创建索引的一些指导原则:
频繁查找的字段
经常作为查询条件的字段
经常排序或者分组的字段
经常作为联接(主外键)的字段
在出现下列情况时,一般不需要创建索引,否则会影响执行效率
表中数据比较少
表中字段有固定选项
时间: 2024-12-24 03:58:24