SQLServer中使用索引视图(物化视图)
物化视图:以前用的普通的视图,普通视图就是一段逻辑语句,对性能没有任何的提升,也不能创建索引,而物化视图会把视图里查询出来的数据在数据库上建立快照,它和物理表一样,可以创建 索引,主键约束等等,性能会有质的提升,但是其有缺点,会占用,可以设置它定时自动更新一次,也可以手动更新,当然也是可以设置及时更新的,但是会拉慢基表的增删改查操作,在这里我只讲思路,具体的话大家可以自己去研究。
--创建物化视图,每天晚上22:00:00自动更新
create materialized view VM_PSNPERSONINFO
refresh force on demand start with sysdate next to_date( concat( to_char( sysdate+1,'dd-mm-yyyy'),' 22:00:00'),'dd-mm-yyyy hh24:mi:ss')
as
SELECT dt.personid, c.employeeid,d.unitcode,d.unitname,d.label,
dt.unitid,dt.startdate,dt.enddate
FROM (
SELECT DISTINCT b.personnelid personid,SUBSTR (a.effectdate, 1, 10) startdate,
MIN (CASE WHEN a.effectdate < b.effectdate THEN b.effectdate ELSE N'9999-99-99' END) AS enddate,
MIN (a.adjustresult) unitid
FROM psnadjust a LEFT JOIN psnadjust b
ON a.personnelid = b.personnelid
WHERE a.adjusttype = '2' AND b.adjusttype = '2'
GROUP BY b.personnelid, a.effectdate
) dt
INNER JOIN psnaccessioninfo c
ON c.personid = dt.personid
INNER JOIN orgstdstruct d
ON d.unitid = dt.unitid
ORDER BY employeeid, unitcode, startdate;
http://www.cnblogs.com/zhxhdean/archive/2011/05/16/2047795.html
http://blog.163.com/ybhjj2005@126/blog/static/561082842007235010598/
http://www.cnblogs.com/liuzhendong/archive/2011/10/10/2205744.html
SQLServer中使用索引视图(物化视图)的更多相关文章
- SQLServer中使用索引视图
在SQL Server中,视图是一个保存的T-SQL查询.视图定义由SQL Server保存,以便它能够用作一个虚拟表来简化查询,并给基表增加另一层安全.但是,它并不占用数据库的任何空间.实际上,在你 ...
- MongoDB 4.2新特性:分布式事务、字段级加密、通配符索引、物化视图
MongoDB 4.2已经发布,我们来看看它增加了哪些新特性?分布式事务?数据库加密?通配符索引? 在2019年MongoDB World大会上,CTO Eliot Horowitz介绍了MongoD ...
- Oracle-11g 中两库间物化视图的同步
html,body { font-size: 15px } body { font-family: Helvetica, "Hiragino Sans GB", "微软雅 ...
- sqlserver中 事物 索引及视图
事务 1.什么是事务 事务是一个不可分割的工作逻辑单元,它包含了一组数据库的操作命令,并且所有命令作为一个整体一起向系统提交或撤销操作请求,即要么都执行,要么都不执行 2.事务的4个属性 (1). ...
- Sqlserver中的索引
一.什么是索引及索引的优缺点 1.1 索引的基本概念 数据库索引,是数据库管理系统中一个排序的数据结构,用来协助快速查询数据库表中数据. 简单理解索引就是一个排好顺序的目录,设置了索引就意味着进行了 ...
- SqlServer中查看索引的使用情况
--查看数据库索引的使用情况 select db_name(database_id) as N'TOPK_TO_DEV', --库名 object_name(a.object_id) as N'Top ...
- oracle 物化视图及创建索引
物化视图是一种特殊的物理表,“物化”(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际上转换为视图SQL语句的查询.这样对整体 ...
- Oracle之物化视图
来源于:http://www.cnblogs.com/Ronger/archive/2012/03/28/2420962.html 近期根据项目业务需要对oracle的物化视图有所接触,在网上搜寻关于 ...
- 《oracle每天一练》Oracle之物化视图
相关帖子思考和跟踪 本文转自Ronger 物化视图是一种特殊的物理表,“物化”(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实 ...
随机推荐
- linux 部分命令简单使用介绍-ssh、scp、less、tail、find、grep(持续添加)
ssh 加密的网络协议,提供客户-服务模式. 登录 ssh username@ip ssh ip #不提供用 ...
- java的动态绑定与双分派(规避instanceof)
1. 动态绑定的概念 指程执行期间(而不是在编译期间)判断所引用对象的实际类型,根据其实际的类型调用其相应的方法 . 例如: package org.demo.clone.demo; public c ...
- 《uname命令》-linux命令五分钟系列之五
本原创文章属于<Linux大棚>博客. 博客地址为http://roclinux.cn. 文章作者为roc 希望您能通过捐款的方式支持Linux大棚博客的运行和发展.请见“关于捐款” == ...
- underscorejs-countBy学习
2.20 countBy 2.20.1 语法 _.countBy(list, iteratee, [context]) 2.20.2 说明 排序一个列表组成一个组,并且返回各组中的对象的数量的计数.类 ...
- SQL服务器名称的更改
SQL服务器名称的更改 1.使用select @@ServerName可以看到当前数据库的服务器名称 2.从Sys.SysServers表中可以看到当前的所有服务器名称 3.使用 sp_drops ...
- [转]NodeJS、NPM安装配置步骤(windows版本)
1.windows下的NodeJS安装是比较方便的(v0.6.0版本之后,支持windows native),只需要登陆官网(http://nodejs.org/),便可以看到首页的“INSTALL” ...
- 防止mysql注入
function check($sql_str) { $checks=eregi('select|insert|update|delete|\'|\/|\\\|\*|\.|union|into|loa ...
- php基础知识【函数】(2)文件file
一.路径 1.dirname -- 返回路径中的目录部分 $path = "/etc/passwd"; $file = dirname($path); // ...
- python django 自定义 装饰器
# -*-coding:utf-8-*- __author__ = "GILANG (pleasurelong@foxmail.com)" """ d ...
- ACM竞赛常用STL(一)
全排列函数next_permutation STL 中专门用于排列的函数(可以处理存在重复数据集的排列问题) 头文件:#include <algorithm> using namespac ...