1. use tempdb
  2. ----在创建视图和所有底层表时,必须打开ANSI_NULLS以及QUOTED_IDENTIFIER选项
  3. --SET ANSI_NULLS ON
  4. --GO
  5. --SET QUOTED_IDENTIFIER ON
  6. --GO
  7. ----创建两张表,一张表头,一张明细,仅仅作为DEMO使用
  8. --CREATE TABLE HeadTable
  9. --(
  10. -- HeadId INT PRIMARY KEY ,
  11. -- HeadInfo VARCHAR(50) ,
  12. -- DataStatus TINYINT ,
  13. -- CreateDate Datetime
  14. --)
  15. --GO
  16.  
  17. --CREATE TABLE DetailTable
  18. --(
  19. -- DetailId INT identity(1,1) PRIMARY KEY ,
  20. -- HeadId INT         ,
  21. -- DatailInfo VARCHAR(50)
  22. --)
  23. --GO
  24.  
  25. ----写入数据
  26. --DECLARE @i int = 0
  27. --WHILE @i<200000
  28. --BEGIN
  29. -- INSERT INTO HeadTable values (@i,NEWID(),RAND()*10,GETDATE()-RAND()*100)
  30. -- INSERT INTO DetailTable(HeadId,DatailInfo) VALUES (@i,NEWID())
  31. -- SET @i=@i+1
  32. --END
  33. --GO
  34. ------索引视图创建
  35. CREATE VIEW HDTable_vw WITH SCHEMABINDING
  36. AS
  37. SELECT H.HeadId,H.CreateDate,H.DataStatus,D.DetailId,D.DatailInfo
  38. FROM dbo.HeadTable H
  39. INNER JOIN dbo.DetailTable D ON H.HeadId = D.HeadId
  40. WHERE H.DataStatus > 0
  41. GO
  42.  
  43. ------为视图创建索引
  44. CREATE UNIQUE CLUSTERED INDEX IX_HDId ON HDTable_vw(DetailId,HeadId)
  45.  
  46. ---测试
  47. --原表查询
  48. --SET STATISTICS TIME ON --开启统计时间
  49. SELECT H.HeadId,H.CreateDate,H.DataStatus,D.DetailId,D.DatailInfo
  50. FROM dbo.HeadTable H
  51. INNER JOIN dbo.DetailTable D ON H.HeadId = D.HeadId
  52. WHERE H.DataStatus > 0
  53.  
  54. --索引视图查询
  55. --SET STATISTICS TIME ON --开启统计时间
  56. SELECT HeadId,CreateDate,DataStatus,DetailId,DatailInfo
  57. FROM HDTable_vw
  58. 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. Django web project

    在virtualenv下 (myvenv) ~/djangogirls$ django-admin startproject mysite . 生成web 工程目录 djangogirls ├───m ...

  2. 【搜索】 Prime Path

    #include<cstdio> #include<cstring> #include<cmath> #include<queue> #include& ...

  3. Mac下Maven安装与配置

    Mac下Maven安装与配置 下载maven http://maven.apache.org/download.cgi main->download菜单下的Files 下载后解压在Documen ...

  4. 824. Goat Latin

    class Solution { public: string toGoatLatin(string S) { S.push_back(' '); //add a space that the loo ...

  5. Our Future

    The world is betting on how to win the football game: But I'm betting on how to win your heart: Mayb ...

  6. MFC中的几个虚函数

    1.PreTranslateMessage()和WindowProc() PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,通过函数名也可以猜出来.绝 ...

  7. 分分钟搞懂union与union all

    SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每 ...

  8. SVN安装配置与使用

    http://www.cnblogs.com/skyway/archive/2011/08/10/2133399.html http://www.cnblogs.com/lidabo/archive/ ...

  9. 开机logo以及两种修改开机动画方法

    Android开机画面总共有三屏 一.第一屏:开机logo 1.选张png格式的图片,在Linux任意下执行(安装工具): sudo apt-get install pnmtoplainpm 2.在所 ...

  10. docker 搭建 MYSQL并且完成主从复制

    mysql主从复制逻辑: 1.从库执行start slave 开启主从复制. 2.从库请求连接到主库,并且指定binlog文件以及位置后发出请求. 3.主库收到从库请求后,将信息返回给从库,除了信息日 ...