惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hugging Face - Blog
Hugging Face - Blog
云风的 BLOG
云风的 BLOG
大猫的无限游戏
大猫的无限游戏
M
MIT News - Artificial intelligence
L
LangChain Blog
阮一峰的网络日志
阮一峰的网络日志
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Recent Announcements
Recent Announcements
IT之家
IT之家
Google DeepMind News
Google DeepMind News
罗磊的独立博客
爱范儿
爱范儿
Last Week in AI
Last Week in AI
人人都是产品经理
人人都是产品经理
U
Unit 42
MongoDB | Blog
MongoDB | Blog
S
SegmentFault 最新的问题
B
Blog
博客园 - 叶小钗
月光博客
月光博客
Stack Overflow Blog
Stack Overflow Blog
V
Visual Studio Blog
C
Check Point Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知

博客园 - Nillson

传说中的Singleton.... 设计模式--简单工厂模式 策略模式 抽象类与接口 C# 实现的一个二叉树类 回顾一个面试题 再谈代理 常见的排序方法 预定义,宏定义 连接符,数值运算与函数 复杂查询 重载和重写 采用递归的方法获得一棵树的所有叶节点 .NET中的新概念整理 4月要看的书 System.Runtime.InteropServices浅见 挂个牛人 一篇关于如何写注释的文章,值得收藏 Vistual Studio 2005到Vistual Studio 2008的版本转换问题 Visual Studio 2008 的一个Bug
数据库中的Index和View的理解
Nillson · 2008-06-30 · via 博客园 - Nillson

索引(Index)
所谓的Index就是索引其作用与书本中的索引类似,无非就是提高我们检索数据的速度。当然是需要付出一定的代价,这种代价就是数据库所占硬盘空间的增加。其实这也可以理解,我们如果要对一本字典做索引,势必要买点胶贴纸粘在书页上,书的分量增加是必然的了。
索引按照存储结构的不同分为簇索引也叫聚集索引(clustered index)和非簇索引也叫非聚集索引(unclustered index)
簇索引对表进行物理页上的重新排序,所以记录的存储顺序是会改变的,而且是永久性的改变。
非簇索引生成完全独立于数据的结构,该结构的叶结点种存储的是关键字的值和行定位器,而簇索引的叶结点存储的是实际的数据。所以俺的理解是簇索引是跟数据放在一块儿的,它把数据给重新排了个个儿。而非簇索引则是把数据的信息抽象出来用关键字值和行定位器来定位该行数据。所以他独立于数据之外来排序。对数据本身的排序没有影响。说了这么多搞得有点类似于数组跟链表的关系了。
语法:
--创建簇索引
create clustered index Index_Name
on Table_Name (Column_Name)

--创建非簇索引
create index Index_Name
on Table_Name (Column_Name)

视图(View)
简单来说视图就是存储在数据库中的查询语句。
语法:
--创建视图
create view ViewName
as select section

个人理解视图就是一部分懒人在处理复杂查询的时候好不容易想出来一个查询语句,怕以后忘了就给了个名字记住喽。所以以后再要用的时候就不需要写查询语句,而直接从视图里边得结果就完了。
图是永久存储在数据库里边的(否则懒人的目的就达不到了),对图中数据的更新会直接更新到图所映射的表中。这个也好理解,如果不能这么做,我还要这个东东干吗?但是这个功能是有限制的,那就是:该视图必须基于单个的表,并且没有group by 或者having 子句的查询。