use tempdb
----在创建视图和所有底层表时,必须打开ANSI_NULLS以及QUOTED_IDENTIFIER选项
--SET ANSI_NULLS ON
--GO
--SET QUOTED_IDENTIFIER ON
--GO
----创建两张表,一张表头,一张明细,仅仅作为DEMO使用
--CREATE TABLE HeadTable
--(
-- HeadId INT PRIMARY KEY ,
-- HeadInfo VARCHAR(50) ,
-- DataStatus TINYINT ,
-- CreateDate Datetime
--)
--GO --CREATE TABLE DetailTable
--(
-- DetailId INT identity(1,1) PRIMARY KEY ,
-- HeadId INT         ,
-- DatailInfo VARCHAR(50)
--)
--GO ----写入数据
--DECLARE @i int = 0
--WHILE @i<200000
--BEGIN
-- INSERT INTO HeadTable values (@i,NEWID(),RAND()*10,GETDATE()-RAND()*100)
-- INSERT INTO DetailTable(HeadId,DatailInfo) VALUES (@i,NEWID())
-- SET @i=@i+1
--END
--GO
------索引视图创建
CREATE VIEW HDTable_vw WITH SCHEMABINDING
AS
SELECT H.HeadId,H.CreateDate,H.DataStatus,D.DetailId,D.DatailInfo
FROM dbo.HeadTable H
INNER JOIN dbo.DetailTable D ON H.HeadId = D.HeadId
WHERE H.DataStatus > 0
GO ------为视图创建索引
CREATE UNIQUE CLUSTERED INDEX IX_HDId ON HDTable_vw(DetailId,HeadId) ---测试
--原表查询
--SET STATISTICS TIME ON --开启统计时间
SELECT H.HeadId,H.CreateDate,H.DataStatus,D.DetailId,D.DatailInfo
FROM dbo.HeadTable H
INNER JOIN dbo.DetailTable D ON H.HeadId = D.HeadId
WHERE H.DataStatus > 0 --索引视图查询
--SET STATISTICS TIME ON --开启统计时间
SELECT HeadId,CreateDate,DataStatus,DetailId,DatailInfo
FROM HDTable_vw
WHERE DataStatus > 0

索引视图DEMO2的更多相关文章

  1. SQL Server索引视图以(物化视图)及索引视图与查询重写

    本位出处:http://www.cnblogs.com/wy123/p/6041122.html 经常听Oracle的同学说起来物化视图,物化视图的作用之一就是可以实现查询重写,听起来有一种高大上的感 ...

  2. SQL Server 索引视图 聚簇索引

    创建示例: 朋友的网站速度慢,让我帮忙看下,他用的SQL Server里面 有一个文章表里面有30多万条记录 还有一个用户表里面也差不多17万记录 偏偏当初设计的时候没有冗余字段 很多帖子信息需要JO ...

  3. 使用SQL Server 2000索引视图提高性能

    什么是索引视图? 许多年来,Microsoft? SQL Server? 一直都提供创建虚拟表(称为视图)的功能.在过去,这些视图主要有两种用途: 提供安全机制,将用户限制在一个或多个基表中的数据的某 ...

  4. SQLServer之创建索引视图

    索引视图创建注意事项 对视图创建的第一个索引必须是唯一聚集索引. 创建唯一聚集索引后,可以创建更多非聚集索引. 为视图创建唯一聚集索引可以提高查询性能,因为视图在数据库中的存储方式与具有聚集索引的表的 ...

  5. (4.22)sql server视图/索引视图概念

    (4.22)sql server视图 关键词:sql server视图.索引视图 SQL Server视图是由SQL语句组成的逻辑数据库对象.它也可以称为由SQL语句组成的虚拟表,该SQL语句可能包含 ...

  6. MSSQL索引视图(indexed view)之简述及使用

    乍一听到这个名字,可能感到有点陌生,这个对象是干嘛的呢?原理是什么?不用着急,我们看看下面的内容,慢慢就明白了.顾名思义,索引视图就是建有索引的视图,这是MSSQL提供的一项技术,用于提升某些SQL语 ...

  7. SQL Server 优化---为什么索引视图(物化视图)需要with(noexpand)强制查询提示

    本文出处:http://www.cnblogs.com/wy123/p/6694933.html 第一次通过索引视图优化SQL语句,以及遇到的一些问题,记录一下. 语句分析 最近开发递交过来一个查询统 ...

  8. hadoop Hive 的建表 和导入导出及索引视图

       1.hive 的导入导出 1.1 hive的常见数据导入方法 1.1.1 从本地系统中导入数据到hive表 1.创建student表 [ROW FORMAT DELIMITED]关键字,是用来设 ...

  9. 索引视图DEMO1

    --use tempdb ----------------------在创建视图和所有底层表时,必须打开ANSI_NULLS以及QUOTED_IDENTIFIER选项 --SET ANSI_NULLS ...

随机推荐

  1. openssl pem文件的读取

    准备工作 生成私钥文件(里面已包含公钥) openssl genrsa -out private.pem 1024 从私钥文件中提取公钥 openssl rsa -in private.pem -pu ...

  2. MySQL open_files_limit相关设置

    背景:      数据库链接不上,报错: root@localhost:/var/log/mysql# mysql -uzjy -p -h192.168.1.111 --default-charact ...

  3. mysqldb mysql_config

    在安装mysqldb Python的时候会用到mysql_config,但是正常安装的MySQL环境下是没有这个文件的,这个文件在Linux下是可执行文件,所以需要到mysql官方网站上下载MySQL ...

  4. MZOJ 1134: 二叉苹果树

    按书上大的,dfs还需加强 #include <bits/stdc++.h> #define read read() using namespace std; int read { ; c ...

  5. mysql之表的查看操作

    一 补充一些杂碎的知识 1 插入数据: create table 新表名(字段 数据类型[约束条间]...) select 字段... from 旧表名 create table 新表名(字段 数据类 ...

  6. ELASTIC SEARCH 性能调优

    ELASTICSEARCH 性能调优建议 创建索引调优 1.在创建索引的使用使用批量的方式导入到ES. 2.使用多线程的方式导入数据库. 3.增加默认刷新时间. 默认的刷新时间是1秒钟,这样会产生太多 ...

  7. T-SQL查询的逻辑处理过程

    对于一个查询SQL而言,通常将其逻辑处理过程分成7个大的阶段 分别是: 1.FROM 2.WHERE 3.GROUP BY 4.HAVING 5.SELECT 6.ORDER BY 7.TOP/OFF ...

  8. 腾讯云 centos 一键安装nginx环境

    这里测试centos版本为7.4 进入命令行直接敲入一下代码 $ yum install nginx 根据提示 进行确认 下一步 即可安装完毕: 服务器默认根目录为 : /usr/share/ngin ...

  9. MFC源码实现文件对照表

    CDocManager类[实现文件] /SRC/DOCTEMPL.CPP CSingleDocTemplate类[实现文件] /SRC/DOCSINGL.CPP CWinApp::OnFileOpen ...

  10. VHDL基础1

    Description Structure 一个可综合的VHDL描述中一般由3部分组成:LIBRARY declarations.ENTITY.ARCHITECTURE Library(库)用来设计重 ...