mysql桦仔_Microsoft SQL Server 2005技术内幕:T-SQL查询笔记

Microsoft SQL Server 2005技术内幕:T-SQL查询笔记

目录

13bec14e6bc4bbd88f2fcff5fec8eeae.png

f

b924ba8e373ce0911989abb607a3454e.png

f

8acceac972e31d73063b91c750556509.png

f

a06ec21bffb5d7a9aa7caaec17ab828c.png

f

8dff132a50b95376c5fe7e29b23fec07.png

f

5e1b4284d2ef8a6f2b93e9970961106d.png

f

dbd09d3c424378851c0255702c7432d8.png

f

1c1a6b2b8c1a094f5331a21038458259.png

f

第二章 物理查询处理

分析,代数化,查询优化

56fb802582481673e0fdb3a66dd99634.png

f

c1604c52d94615da38ed9620af6b2016.png

f

bf3125d39cda4eafb169ebcfafc7e27e.png

f

e1d45e91534c65a511901feadcac8a69.png

f

e6bfa8759d6f9ddad5da59b32f557e3b.png

f、

分析——》绑定——》优化

分析:检查,例如检查使用分隔标识符的表或列名称是否以数字开头,分析几乎是所有编程语言编译器的一项常规操作

绑定:确定SQL语句所引用对象的特征检查请求语义是否有意义,例如检查From A join B的查询时,如果A是一个表

B是一个存储过程,则绑定失败

优化:类似于绑定,优化器一次只优化批处理中的一条语句,在编译器为该批处理生成执行计划并存储到plan cache之后

将执行该计划的执行上下文(execute context)的特殊副本。sqlserver像缓存执行计划一样缓存执行上下文

sqlserver并不优化batch中的每条sql语句,他只优化那些访问表而且可能生成多个执行计划的语句,sqlserver优化所有的DML

只有被优化过的语句才会生成执行计划

a9093f34b948e0d7170ee10741acb778.png

f

运算符信息提示框

b17866f4d43e12f334de927b080453f5.png

f

logical operation:基于微软查询处理概念模型的逻辑操作。例如,联接运算符的physical operation属性表示联接算法(nested loops,merge ,hash)物理运算符

logical operation属性表示逻辑联接类型(Inner join,outer join,semi join 等等)逻辑运算符

如果没有与该运算符关联的逻辑操作,则这项度量的值与physical operation相同

actual number of rows:从该运算符实际返回的行数(只显示在实际的计划中)

estimated I/O  cost和estimated cpu cost:运算符在特定资源上的估计成本(I/O或CPU)这两个度量将帮助你确定运算符是否是I/O密集或CPU密集的

例如,你可以看到clustered index seek运算符主要与I/O有关,而hash match运算符主要与cpu有关

estimated operator cost:执行该操作的成本

estimated subtree cost:如前所述,他表示到当前节点为止整个子树的累积成本

estimated number of rows:该运算符预计的返回行数。在有些情况下,通过观察实际行数和估计行数之间的差异,你可以找出因统计信息不足或其他原因而导致的成本问题

estimated row size:你可能会奇怪为什么在实际的查询计划中没有显示该属性的实际值。因为你的表可能包含可变长度类型,表中行的大小各异

actual rebinds和actual rewinds:这两个度量仅与作为nested loops联接内侧的运算符有关,在其他运算符中,rebinds将显示为1,rewinds将显示为0

他们表示内部init方法被调用的次数。重新绑定次数和重绕次数之和等于联接外侧所处理的行数。重新绑定意味着联接的一个或多个参数发生更改后,必须重新计划

联接的内侧。重绕意味着任何相关参数都没有发生更改,可以重用之前的内侧结果集

信息提示框的底部显示该运算符的其他信息,如关联的对象名称、输出、参数等

8efed1037b91f14e9a59b691f7f56694.png

f

ef1b9ab404686beace65717c2a1f3c13.png

f

代数化代替sqlserver2000的规范化

分析树->查询处理器树

6a863d2fb38553a8bfa199fc3d17274d.png

f

名称解释,二元运算符,类型派生

运算符平展 栈溢出

e396114ac5dd6cfdafbbdbc430c01b6c.png

f

名词解释检查每个对象是否真的引用了系统目录,系统表中已经存在的表或列

对于视图检查视图树

TSQL中的数据类型是静态确定

聚合绑定

分组绑定

bc868512bece42ab86cf41d160c9e11a.png

f

基于成本的优化器cost-base

6b099eb17dc6bd20df5ecc9b8b26e060.png

f

优化分几部分:细微计划优化

664a559fa87dbc4d2941e1eca3c7ec88.png

f

加载索引和表上的统计信息,启动基于成本的优化

d07fe7160436e2395677fd44bd8ff4b5.png

f

快速计划优化

df7775361def8607f50db859c5d65f53.png

f

优化器DMV

SELECT * FROM sys.[dm_exec_query_optimizer_info]

73828b8028625025f590279877172fa5.png

f

351d8ca989488779cb6eff93e772436b.png

f

0bf01e08ca9403176b554dd333e3a0c6.png

f

SET SHOWPLAN_XML

d75faaf7e7c7b43c74ab13b0e9d26720.png

f

2e12662b27694a237c56d259f20cf67a.png

F

0a2f7b3440789b1a5d5818d45aea47fe.png

F

xml架构showplanxml.xsd囊括了估计的和运行时的XML显示计划,然而运行时,XML显示计划还提供了额外的信息,因此,他的特定元素和属性在这个xsd中是可选的

安装sqlserver2005时该架构被放到

C:\Program Files\Microsoft SQL Server\90\Tools\Binn\schemas\sqlserver\2004\07\showplan目录

你也可以通过http://schemas.Microsoft.com/sqlserver得到该架构

XML格式的显示计划可以保存到扩展名为sqlplan的文件

960d110e430a039d39d3e87ff2e198b0.png

F

a14a1341353a57d5e548d6e63dd8af50.png

F

0839ba2177fc4cd3b9d89760839dd555.png

F

0e65ee60d99c5ca4d48608e351e1cafa.png

f

因为执行时DOP值会根据执行开始时的工作负荷被调整

运行时计划会不同

64b97ce363b0bd25985b300f0b103426.png

f

0db72d955b76e00d0e55bde94ce7a22c.png

f

415caf80182235ec6618edb055499888.png

f

跟踪sql2005

ffdabfa14c66ae67c25a0dcd4daa8a02.png

f

0bf7890673da680628e04f3f28262789.png

f

执行计划更新

标量插入数据和bulk 插入

更新执行计划

aeecc9c365749636c150cf46cf7b5b8e.png

f

更新索引键和分区键是完全 delete/insert

因此他的成本大概是非键update的语句的两倍

查询优化器执行IUD语句时有两种不同的策略,每行维护(per-row maintenance)和每索引维护(per-index maintenance)

d0861fdc1cfbedf94a821a7da3d603b7.png

f

sequence运算符强制执行顺序

spool运算符,Halloween spool

6ed1571b39d4e6bfc46dcf6b7ede500d.png

f

4d2e91b742add50f59b6514ec74a5860.png

f

假脱机防止了两次更新同一条记录,确保得到正确的结果,我们把IUD查询计划中的这种假脱机称为Halloween假脱机

4b90e72fa9f3e90ab4e402043a7418e0.png

f

f

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

正在更新 [dbo].[BriefingEventConfig]

[PK_BriefingEventConfig],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[OpinionMonitorViewTrend]

[PK_OpinionMonitorViewTrend],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ClassifyTag]

[PK_ClassifyTag],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[BriefingEventDetail]

[PK_BriefingEventDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_SPHELPDB]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_XPMSVER]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_Sysdatabases]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[ClassifyTagResult]

[PK_ClassifyTagResult],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_loaded_modules]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_TopN_QueryPlanStats]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[Notification_Rank]

[PK_Notification_Message],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[OpinionMonitorViewComment]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_MissingIndexes]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_SYSINDEXES]

[_WA_Sys_00000003_0B129727],不需要更新...[_WA_Sys_00000001_0B129727],不需要更新...[_WA_Sys_00000009_0B129727],不需要更新...

已更新0 条索引/统计信息,3不需要更新。

正在更新[dbo].[InfoAlarmBriefingConfig]

[PK_InfoAlarm_BriefingConfig]已更新...[_WA_Sys_00000009_0BC6C43E]已更新...[_WA_Sys_0000000A_0BC6C43E]已更新...[_WA_Sys_00000002_0BC6C43E]已更新...[_WA_Sys_00000003_0BC6C43E]已更新...[_WA_Sys_00000004_0BC6C43E]已更新...[_WA_Sys_00000005_0BC6C43E]已更新...[_WA_Sys_00000006_0BC6C43E]已更新...[_WA_Sys_00000007_0BC6C43E]已更新...[_WA_Sys_00000008_0BC6C43E]已更新...

已更新10 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_IMPORTEDFILES]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_SCRIPT_ENVIRONMENT_DETAILS]

[_WA_Sys_00000001_0CFADF99],不需要更新...[_WA_Sys_00000002_0CFADF99],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[tbl_DEBUGPRINT]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[Notification_User]

[PK_T_Notification_User],不需要更新...[_WA_Sys_00000002_0EF836A4],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[HotspotIsland]

[PK_Hotspot_Island]已更新...[_WA_Sys_00000002_0F624AF8]已更新...[_WA_Sys_00000004_0F624AF8]已更新...[_WA_Sys_00000005_0F624AF8]已更新...

已更新4 条索引/统计信息,0不需要更新。

正在更新[dbo].[ClassifyKeywordCustom]

[PK_ClassifyKeywordCustom],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_REQUESTS]

[_WA_Sys_00000002_0FD74C44],不需要更新...[idx1],不需要更新...[idx2],不需要更新...[idx3],不需要更新...[idx4],不需要更新...[_WA_Sys_00000009_0FD74C44],不需要更新...[_WA_Sys_0000003F_0FD74C44],不需要更新...[stats1],不需要更新...[_WA_Sys_00000033_0FD74C44],不需要更新...[_WA_Sys_00000003_0FD74C44],不需要更新...[_WA_Sys_00000032_0FD74C44],不需要更新...[_WA_Sys_00000039_0FD74C44],不需要更新...[_WA_Sys_00000038_0FD74C44],不需要更新...[_WA_Sys_00000037_0FD74C44],不需要更新...

已更新0 条索引/统计信息,14不需要更新。

正在更新[dbo].[tbl_NOTABLEACTIVEQUERIES]

[idx1],不需要更新...[_WA_Sys_0000000E_10CB707D],不需要更新...[_WA_Sys_0000000D_10CB707D],不需要更新...[_WA_Sys_00000003_10CB707D],不需要更新...

已更新0 条索引/统计信息,4不需要更新。

正在更新[dbo].[tbl_OS_WAIT_STATS]

[cidx],不需要更新...[_WA_Sys_00000003_11BF94B6],不需要更新...[_WA_Sys_00000008_11BF94B6],不需要更新...

已更新0 条索引/统计信息,3不需要更新。

正在更新[dbo].[ReportIssuedDetail]

[PK_ReportIssuedDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[BaiduNewsAmount]

[PK_BaiduNewsAmount],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_SPINLOCKSTATS]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_SYSPERFINFO]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_SQL_CPU_HEALTH]

[_WA_Sys_00000003_149C0161]已更新...[_WA_Sys_00000001_149C0161]已更新...[_WA_Sys_00000007_149C0161],不需要更新...[_WA_Sys_00000006_149C0161],不需要更新...[_WA_Sys_00000004_149C0161],不需要更新...

已更新2 条索引/统计信息,3不需要更新。

正在更新[dbo].[Notification_Reply]

[PK_T_Notification_Reply],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[InfoAlarmBriefing]

[PK_InfoAlarm_Briefing]已更新...[_WA_Sys_00000002_151B244E]已更新...[_WA_Sys_00000006_151B244E]已更新...[_WA_Sys_00000007_151B244E]已更新...[IX_InfoAlarmBriefing]已更新...

已更新5 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_FileStats]

[_WA_Sys_00000002_1590259A],不需要更新...[_WA_Sys_00000006_1590259A],不需要更新...[_WA_Sys_00000005_1590259A],不需要更新...

已更新0 条索引/统计信息,3不需要更新。

正在更新[dbo].[ClusterTopic]

[PK_ClusterTopic],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_dm_exec_query_resource_semaphores]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_dm_os_memory_brokers]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_dm_exec_query_memory_grants]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[ClusterTopicDetail]

[PK_ClusterTopicDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_HEADBLOCKERSUMMARY]

[_WA_Sys_00000006_1960B67E],不需要更新...[_WA_Sys_00000003_1960B67E],不需要更新...[_WA_Sys_00000002_1960B67E],不需要更新...[idx1],不需要更新...[_WA_Sys_00000008_1960B67E],不需要更新...

已更新0 条索引/统计信息,5不需要更新。

正在更新[dbo].[NetPoliceDetail]

[PK_NetPoliceDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[KmsHarmony]

[PK_KmsHarmony],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_RUNTIMES]

[cidx],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[NetizensTrueName]

[PK_NetizensTrueName],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_SYSINFO]已更新0 条索引/统计信息,0不需要更新。

正在更新[dbo].[SiteSensitive]

[PK_SiteSensitive],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[BriefingChoiceResult]

[PK_BriefingChoiceResult],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[SiteEvaluation]

[PK_SiteEvaluation],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[Channel]

[PK_Channel],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[sysarticles]

[c1sysarticles]已更新...[_WA_Sys_0000000B_1FD8A9E3]已更新...[_WA_Sys_0000000A_1FD8A9E3]已更新...[_WA_Sys_00000009_1FD8A9E3]已更新...[_WA_Sys_0000000E_1FD8A9E3]已更新...[_WA_Sys_00000006_1FD8A9E3]已更新...[_WA_Sys_00000003_1FD8A9E3]已更新...[_WA_Sys_00000010_1FD8A9E3]已更新...[_WA_Sys_0000000F_1FD8A9E3]已更新...[_WA_Sys_0000000D_1FD8A9E3]已更新...[_WA_Sys_00000011_1FD8A9E3]已更新...[_WA_Sys_00000012_1FD8A9E3]已更新...[_WA_Sys_00000005_1FD8A9E3]已更新...[_WA_Sys_00000008_1FD8A9E3]已更新...

已更新14 条索引/统计信息,0不需要更新。

正在更新[dbo].[sysarticlecolumns]

[idx_sysarticlecolumns]已更新...[_WA_Sys_00000002_21C0F255]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[SiteEvaluationFormula]

[PK_SiteEvaluationFormula],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[SiteEvaluationScore]

[PK_SiteEvaluationScore],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[FeelingsHotspotsCommentCount]

[PK_Feelings_HotspotsCommentCount]已更新...[_WA_Sys_00000002_23F3538A]已更新...[_WA_Sys_00000003_23F3538A]已更新...

已更新3 条索引/统计信息,0不需要更新。

正在更新[dbo].[TinyBlogGroup]

[PK_TinyBlogGroup]已更新...[_WA_Sys_00000002_24134F1B]已更新...[_WA_Sys_00000003_24134F1B]已更新...[_WA_Sys_00000006_24134F1B]已更新...[_WA_Sys_00000004_24134F1B]已更新...[_WA_Sys_00000005_24134F1B]已更新...[_WA_Sys_00000007_24134F1B]已更新...

已更新7 条索引/统计信息,0不需要更新。

正在更新[dbo].[CommentatorFormula]

[PK_Commentator_Formula]已更新...

已更新1 条索引/统计信息,0不需要更新。

正在更新[dbo].[ChannelDetail]

[PK_ChannelDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[Notification_Formula]

[PK_T_Notification_Formula],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[sysschemaarticles]

[c1sysschemaarticles],不需要更新...[_WA_Sys_00000007_25918339],不需要更新...[_WA_Sys_00000005_25918339],不需要更新...[_WA_Sys_00000006_25918339],不需要更新...[_WA_Sys_00000009_25918339],不需要更新...[_WA_Sys_0000000B_25918339],不需要更新...[_WA_Sys_0000000A_25918339],不需要更新...

已更新0 条索引/统计信息,7不需要更新。

正在更新[dbo].[syspublications]

[uc1syspublications]已更新...[unc2syspublications]已更新...[nc3syspublications]已更新...[_WA_Sys_00000028_2779CBAB]已更新...[_WA_Sys_00000004_2779CBAB]已更新...[_WA_Sys_00000009_2779CBAB]已更新...[_WA_Sys_00000025_2779CBAB]已更新...[_WA_Sys_00000012_2779CBAB],不需要更新...[_WA_Sys_0000000F_2779CBAB],不需要更新...[_WA_Sys_0000000E_2779CBAB]已更新...[_WA_Sys_0000000B_2779CBAB],不需要更新...[_WA_Sys_0000000C_2779CBAB],不需要更新...[_WA_Sys_00000006_2779CBAB]已更新...[_WA_Sys_0000000D_2779CBAB],不需要更新...[_WA_Sys_00000027_2779CBAB],不需要更新...

已更新9 条索引/统计信息,6不需要更新。

正在更新[dbo].[CommentatorDocScoreFormula]

[PK_Commentator_DocScoreFormula],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[FeelingsHotspotsSaying]

[PK_Feelings_HotspotsSaying]已更新...[_WA_Sys_00000002_28B808A7]已更新...[_WA_Sys_00000003_28B808A7]已更新...

已更新3 条索引/统计信息,0不需要更新。

正在更新[dbo].[ClassifyResult2]

[PK_ClassifyResult2],不需要更新...[IX_ClassifyResult2_ClassIdArchiveId],不需要更新...[IX_ClassifyResult2],不需要更新...[IX_ClassifyResult2_1],不需要更新...[_WA_Sys_00000004_28ED12D1],不需要更新...[_WA_Sys_00000005_28ED12D1],不需要更新...[_WA_Sys_00000006_28ED12D1],不需要更新...[_WA_Sys_00000007_28ED12D1],不需要更新...[_WA_Sys_00000008_28ED12D1],不需要更新...[_WA_Sys_00000009_28ED12D1],不需要更新...[_WA_Sys_0000000A_28ED12D1],不需要更新...[_WA_Sys_0000000B_28ED12D1],不需要更新...[_WA_Sys_0000000C_28ED12D1],不需要更新...[_WA_Sys_0000000D_28ED12D1],不需要更新...[_WA_Sys_0000000E_28ED12D1],不需要更新...[_WA_Sys_0000000F_28ED12D1],不需要更新...[_WA_Sys_00000010_28ED12D1],不需要更新...[_WA_Sys_00000011_28ED12D1],不需要更新...[_WA_Sys_00000012_28ED12D1],不需要更新...[_WA_Sys_00000013_28ED12D1],不需要更新...[_WA_Sys_00000014_28ED12D1],不需要更新...[_WA_Sys_00000015_28ED12D1],不需要更新...[_WA_Sys_00000016_28ED12D1],不需要更新...[_WA_Sys_00000017_28ED12D1],不需要更新...[_WA_Sys_00000018_28ED12D1],不需要更新...[_WA_Sys_00000019_28ED12D1],不需要更新...[_WA_Sys_0000001A_28ED12D1]已更新...[_WA_Sys_0000001B_28ED12D1],不需要更新...[_WA_Sys_0000001C_28ED12D1],不需要更新...

已更新1 条索引/统计信息,28不需要更新。

正在更新[dbo].[SearchSiteConfig]

[PK_Search_SiteConfig_1]已更新...[_WA_Sys_00000002_2A4B4B5E]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[TinyBlog]

[PK_TinyBlog],不需要更新...[_WA_Sys_0000000E_2AC04CAA]已更新...[_WA_Sys_0000000F_2AC04CAA]已更新...[_WA_Sys_00000007_2AC04CAA]已更新...

已更新3 条索引/统计信息,1不需要更新。

正在更新[dbo].[SiteGroup]

[PK_SiteGroup]已更新...[_WA_Sys_00000002_2B0A656D]已更新...[_WA_Sys_00000003_2B0A656D]已更新...[_WA_Sys_00000004_2B0A656D]已更新...

已更新4 条索引/统计信息,0不需要更新。

正在更新[dbo].[CriminalInfo]

[PK_CriminalInfo],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[FeelingsHotspotsPicture]

[PK_FeelingsHotspotsPicture],不需要更新...[_WA_Sys_00000002_2D7CBDC4],不需要更新...[_WA_Sys_00000003_2D7CBDC4]已更新...

已更新1 条索引/统计信息,2不需要更新。

正在更新[dbo].[CommentatorTax]

[PK_Commentator_Tax],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[OpinionMonitorComment]

[PK_OpinionMonitorComment],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[CommentatorDocument]

[PK_Commentator_Document],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[FeelingsHotspotsDetail]

[PK_FeelingsHotspotsDetail]已更新...[_WA_Sys_00000007_314D4EA8]已更新...[_WA_Sys_00000008_314D4EA8]已更新...[_WA_Sys_00000003_314D4EA8]已更新...[_WA_Sys_00000009_314D4EA8]已更新...[_WA_Sys_00000002_314D4EA8]已更新...

已更新6 条索引/统计信息,0不需要更新。

正在更新[dbo].[CriminalInfoTel]

[PK_CriminalInfoTel],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[SysGroup]

[PK_T_Sys_Group]已更新...[_WA_Sys_00000002_32E0915F]已更新...[_WA_Sys_00000003_32E0915F]已更新...[_WA_Sys_00000004_32E0915F]已更新...[_WA_Sys_00000005_32E0915F]已更新...[_WA_Sys_00000006_32E0915F]已更新...[_WA_Sys_00000007_32E0915F]已更新...[_WA_Sys_00000008_32E0915F]已更新...

已更新8 条索引/统计信息,0不需要更新。

正在更新[dbo].[syssubscriptions]

[unc1syssubscriptions]已更新...[_WA_Sys_0000000E_32EB7E57]已更新...[_WA_Sys_00000006_32EB7E57]已更新...[_WA_Sys_00000003_32EB7E57]已更新...[_WA_Sys_00000002_32EB7E57]已更新...[_WA_Sys_00000007_32EB7E57]已更新...[_WA_Sys_00000005_32EB7E57]已更新...[_WA_Sys_00000004_32EB7E57]已更新...[_WA_Sys_0000000A_32EB7E57]已更新...

已更新9 条索引/统计信息,0不需要更新。

正在更新[dbo].[CriminalInfoQqNo]

[PK_CriminalInfoQqNo],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[CommentatorReport]

[PK_Commentator_Report],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[KmsRecommended]

[PK_KMS_Recommended]已更新...[_WA_Sys_00000002_3552E9B6]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[OpinionMonitorHotReply]

[PK_OpinionMonitorHotReply],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[CriminalInfoEmail]

[PK_CriminalInfoEmail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[sysarticleupdates]

[unc1sysarticleupdates],不需要更新...[_WA_Sys_0000000A_36BC0F3B],不需要更新...[_WA_Sys_00000002_36BC0F3B],不需要更新...

已更新0 条索引/统计信息,3不需要更新。

正在更新[dbo].[SysGroupUser]

[PK_T_Sys_GroupUser]已更新...[_WA_Sys_00000002_373B3228]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[CriminalInfoDetail]

[PK_CriminalInfoDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[MSpub_identity_range]

[unc1MSpub_identity_range],不需要更新...[_WA_Sys_00000005_38A457AD],不需要更新...[_WA_Sys_00000003_38A457AD],不需要更新...[_WA_Sys_00000002_38A457AD],不需要更新...

已更新0 条索引/统计信息,4不需要更新。

正在更新[dbo].[KmsFriends]

[PK_KmsFriends_1]已更新...[_WA_Sys_00000002_39237A9A]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[systranschemas]

[uncsystranschemas],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[KmsRelate]

[PK_KMS_Relate]已更新...[_WA_Sys_00000002_3AD6B8E2]已更新...[_WA_Sys_0000000E_3AD6B8E2]已更新...[_WA_Sys_00000006_3AD6B8E2]已更新...[_WA_Sys_00000010_3AD6B8E2]已更新...

已更新5 条索引/统计信息,0不需要更新。

正在更新[dbo].[SysUserLog]

[PK_T_SYS_UserLog]已更新...[_WA_Sys_00000002_3B0BC30C]已更新...[_WA_Sys_00000003_3B0BC30C]已更新...[_WA_Sys_00000004_3B0BC30C]已更新...[_WA_Sys_00000005_3B0BC30C]已更新...[_WA_Sys_00000006_3B0BC30C]已更新...[_WA_Sys_00000007_3B0BC30C]已更新...

已更新7 条索引/统计信息,0不需要更新。

正在更新[dbo].[WarningConfig]

[PK_WarningConfig],不需要更新...[_WA_Sys_00000002_3B75D760],不需要更新...[_WA_Sys_00000003_3B75D760],不需要更新...

已更新0 条索引/统计信息,3不需要更新。

正在更新[dbo].[MSpeer_lsns]

[uci_MSpeer_lsns],不需要更新...[PK__MSpeer_l__3213E83E3D690CCA],不需要更新...[nci_MSpeer_lsns],不需要更新...

已更新0 条索引/统计信息,3不需要更新。

正在更新[dbo].[ClassifyRuleSummary]

[PK_ClassifyRuleSummary],不需要更新...[_WA_Sys_00000001_3BEAD8AC],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[SysUserRole]

[PK_SYS_UserRole]已更新...[_WA_Sys_00000002_3CF40B7E]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[InfoAlarmBriefingMaterial]

[PK_InfoAlarm_BriefingMaterial_1]已更新...[IX_InfoAlarmBriefingMaterial]已更新...[_WA_Sys_00000003_3EC74557]已更新...[_WA_Sys_00000004_3EC74557]已更新...[_WA_Sys_00000014_3EC74557]已更新...

已更新5 条索引/统计信息,0不需要更新。

正在更新[dbo].[ImportantPerson]

[PK_ImportantPerson],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[BriefingSpecialConfig]

[PK_BriefingSpecialConfig],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[MSpeer_request]

[_WA_Sys_00000002_40457975],不需要更新...[_WA_Sys_00000001_40457975],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[KmsClassify]

[PK_KMS_Classify]已更新...[_WA_Sys_00000004_40C49C62]已更新...[_WA_Sys_00000005_40C49C62]已更新...[_WA_Sys_00000006_40C49C62]已更新...[_WA_Sys_00000008_40C49C62]已更新...

已更新5 条索引/统计信息,0不需要更新。

正在更新[dbo].[MSpeer_response]

[_WA_Sys_00000001_422DC1E7],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[SysUser]

[PK_T_SYS_User]已更新...[_WA_Sys_00000002_4316F928]已更新...[_WA_Sys_00000003_4316F928]已更新...[_WA_Sys_00000004_4316F928]已更新...[_WA_Sys_00000005_4316F928]已更新...[_WA_Sys_00000006_4316F928],不需要更新...[_WA_Sys_00000007_4316F928]已更新...[_WA_Sys_00000008_4316F928]已更新...[_WA_Sys_00000009_4316F928]已更新...[_WA_Sys_0000000A_4316F928]已更新...[_WA_Sys_0000000B_4316F928]已更新...[_WA_Sys_0000000C_4316F928]已更新...[_WA_Sys_0000000D_4316F928]已更新...[_WA_Sys_0000000E_4316F928]已更新...[_WA_Sys_0000000F_4316F928]已更新...[_WA_Sys_00000010_4316F928]已更新...[_WA_Sys_00000011_4316F928]已更新...[_WA_Sys_00000012_4316F928]已更新...[_WA_Sys_00000013_4316F928]已更新...[_WA_Sys_00000014_4316F928]已更新...[_WA_Sys_00000015_4316F928]已更新...[_WA_Sys_00000016_4316F928]已更新...[_WA_Sys_00000017_4316F928]已更新...[_WA_Sys_00000018_4316F928]已更新...

已更新23 条索引/统计信息,1不需要更新。

正在更新[dbo].[MSpeer_topologyrequest]

[_WA_Sys_00000002_4321E620],不需要更新...[_WA_Sys_00000001_4321E620],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[BriefingSpecial]

[PK_BriefingSpecial],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ReportIssued]

[PK_ReportIssued],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[MSpeer_topologyresponse]

[_WA_Sys_00000001_450A2E92],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ClassifyResult_T]

[PK_ClassifyResult_Temp]已更新...[IX_ClassifyResult_Temp_ClassIdUrl]已更新...[IX_ClassifyResult_Temp_Id]已更新...

已更新3 条索引/统计信息,0不需要更新。

正在更新[dbo].[MSpeer_originatorid_history]

[uci_MSpeer_originatorid_history],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ViolationTreatViews]

[PK_Violation_TreatViews],不需要更新...[_WA_Sys_00000002_477199F1]已更新...[_WA_Sys_00000004_477199F1]已更新...

已更新2 条索引/统计信息,1不需要更新。

正在更新[dbo].[MSpeer_conflictdetectionconfigrequest]

[PK__MSpeer_c__3213E83F49CEE3AF],不需要更新...[_WA_Sys_00000002_47E69B3D],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[BriefingSpecialMaterial]

[PK_BriefingSpecialMaterial],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[MonthlyReport]

[PK_MonthlyReport],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ClassifyRule]

[PK_Classify_Type]已更新...[IX_ClassifyRule]已更新...[_WA_Sys_0000000D_49E3F248]已更新...[_WA_Sys_00000003_49E3F248]已更新...[_WA_Sys_0000000A_49E3F248]已更新...[_WA_Sys_00000004_49E3F248]已更新...[_WA_Sys_00000001_49E3F248]已更新...[_WA_Sys_00000008_49E3F248]已更新...[_WA_Sys_0000000C_49E3F248]已更新...[_WA_Sys_00000012_49E3F248]已更新...[_WA_Sys_0000001C_49E3F248]已更新...[_WA_Sys_0000000F_49E3F248]已更新...[_WA_Sys_0000000E_49E3F248]已更新...

已更新13 条索引/统计信息,0不需要更新。

正在更新[dbo].[tbl_Reports]

[PK__tbl_Repo__D5BD48054BEC364B],不需要更新...[IX_tbl_Reports_ReportName]已更新...

已更新1 条索引/统计信息,1不需要更新。

正在更新[dbo].[BriefingChoiceAnnex]

[PK_Briefing_Annex],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[SysRoleAction]

[PK_SYS_RoleAction],不需要更新...[_WA_Sys_00000002_4C364F0E],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[Notification]

[PK_T_Notification],不需要更新...[_WA_Sys_00000006_4C6B5938],不需要更新...[_WA_Sys_00000007_4C6B5938],不需要更新...[_WA_Sys_00000010_4C6B5938],不需要更新...

已更新0 条索引/统计信息,4不需要更新。

正在更新[dbo].[MSpeer_conflictdetectionconfigresponse]

[uci_MSpeer_conflictdetectionconfigresponse],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ClassifyMetaTrend]

[PK_ClassifyTrend]已更新...[_WA_Sys_00000002_4F67C174]已更新...[_WA_Sys_00000005_4F67C174]已更新...

已更新3 条索引/统计信息,0不需要更新。

正在更新[dbo].[SysRoleMenu]

[PK_SYS_RoleMenu_1]已更新...[_WA_Sys_00000002_5006DFF2]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[NetizensNickName]

[PK_NetizensNickName],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[sysreplservers]

[PK__sysrepls__10A5BE635540965B]已更新...

已更新1 条索引/统计信息,0不需要更新。

正在更新[sys].[filestream_tombstone_1437248175]

[FSTSClusIdx],不需要更新...[FSTSNCIdx],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[ViolationInfo]

[PK_Violation_Info]已更新...[_WA_Sys_0000000A_5629CD9C]已更新...[_WA_Sys_0000000F_5629CD9C]已更新...

已更新3 条索引/统计信息,0不需要更新。

正在更新[sys].[syscommittab]

[ci_commit_ts],不需要更新...[si_xdes_id],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[Temp_ClassId]

[PK_Temp_ClassId]已更新...[_WA_Sys_00000003_5792F321]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[GatherSpecialPage]

[PK_Gather_SpecialPage]已更新...[_WA_Sys_00000002_589C25F3]已更新...[IX_GatherSpecialPage_PublishOn]已更新...[_WA_Sys_0000000A_589C25F3]已更新...[_WA_Sys_00000004_589C25F3]已更新...[_WA_Sys_00000007_589C25F3]已更新...[_WA_Sys_00000005_589C25F3]已更新...[IX_GatherSpecialPage_Url]已更新...[_WA_Sys_00000003_589C25F3],不需要更新...

已更新8 条索引/统计信息,1不需要更新。

正在更新[dbo].[ClassifyResult]

[PK_ClassifyResult_T]已更新...[IX_ClassifyResult_T_ClassIdUrl],不需要更新...[IX_ClassifyResult_T_Id]已更新...[IX_ClassifyResult_T_ArchiveMD5]已更新...[IX_ClassifyResult_T_ParentId]已更新...[IX_ClassifyResult_T_ClassIdParentIdPublishon]已更新...[IX_ClassifyResult_T_ClassIdPublishOn]已更新...[IX_ClassifyResult_T_ClassIdWeight]已更新...[IX_ClassifyResult_T_ClassIdImageCountPublishOn]已更新...[IX_ClassifyResult_T_ArchiveMD5Id]已更新...[IX_ClassifyResult_T_ArichiveId]已更新...

已更新10 条索引/统计信息,1不需要更新。

正在更新[dbo].[ImportantSiteInfo]

[PK_ImportSiteInfo],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ClassifyKeyword]

[PK_ClassifyKeyword],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[BriefingChoice]

[PK_Briefing],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_AnalysisSummary]

[PK__tbl_Anal__5B789DC85FF32EF8],不需要更新...[UQ__tbl_Anal__8AB26CBA62CF9BA3],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[ImportantSitePeople]

[PK_ImportantSitePeople],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[testGAP]

[IX_TESTGAP_ID]已更新...

已更新1 条索引/统计信息,0不需要更新。

正在更新[dbo].[OpinionMonitorConfig]

[PK_OpinionMonitorConfig],不需要更新...[_WA_Sys_00000004_60924D76],不需要更新...[_WA_Sys_0000000A_60924D76],不需要更新...[_WA_Sys_00000007_60924D76],不需要更新...[_WA_Sys_00000003_60924D76],不需要更新...

已更新0 条索引/统计信息,5不需要更新。

正在更新[dbo].[InfoAlarmBriefingResult]

[PK_InfoAlarmBriefingResult],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ImportantSitePeopleDetail]

[PK_ImportantSitePeopleDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[SysMenu]

[PK_SYS_Menu_1]已更新...[_WA_Sys_00000002_65370702]已更新...[_WA_Sys_00000003_65370702]已更新...[_WA_Sys_00000004_65370702]已更新...[_WA_Sys_00000005_65370702]已更新...[_WA_Sys_00000006_65370702]已更新...[_WA_Sys_00000007_65370702]已更新...

已更新7 条索引/统计信息,0不需要更新。

正在更新[dbo].[SysRole]

[PK_SYS_Role]已更新...[_WA_Sys_00000002_656C112C]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[OpinionMonitor]

[PK_OpinionMonitor],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[SysGroupSite]

[PK_SysGroupSite],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[Notification_Stat]

[PK_Notification_Stat],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[ClassifyCommentCount]

[PK_CommentCount]已更新...[_WA_Sys_00000004_68487DD7]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[SiteAssign]

[PK_SiteAssign],不需要更新...[_WA_Sys_00000006_69C6B1F5]已更新...[_WA_Sys_00000002_69C6B1F5]已更新...[_WA_Sys_00000003_69C6B1F5]已更新...[IX_SiteAssign_GroupId]已更新...[IX_SiteAssign_SiteId]已更新...[_WA_Sys_00000007_69C6B1F5]已更新...

已更新6 条索引/统计信息,1不需要更新。

正在更新[dbo].[IndexPageDefault]

[PK_IndexPageDefault],不需要更新...[_WA_Sys_00000002_6DB73E6A],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[OpinionMonitorView]

[PK_OpinionMonitorView],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tbl_PERF_STATS_SCRIPT_RUNTIMES]

[_WA_Sys_00000001_6E414E4F],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[CommentatorDocumentSearch]

[PK_Commentator_DocumentSearch],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[OpinionMonitorViewDetail]

[PK_OpinionMonitorViewDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[GatherSpecialType]

[PK_Gather_SpecialType],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[FeelingsHotspots]

[PK_Feelings_Hotspots]已更新...[_WA_Sys_0000000A_72910220]已更新...[_WA_Sys_0000000C_72910220]已更新...[_WA_Sys_00000014_72910220]已更新...[_WA_Sys_00000015_72910220]已更新...[_WA_Sys_00000006_72910220]已更新...

已更新6 条索引/统计信息,0不需要更新。

正在更新[dbo].[SysAction]

[PK_SYS_Action],不需要更新...[_WA_Sys_00000002_74AE54BC],不需要更新...[_WA_Sys_00000003_74AE54BC],不需要更新...[_WA_Sys_00000004_74AE54BC],不需要更新...[_WA_Sys_00000005_74AE54BC],不需要更新...

已更新0 条索引/统计信息,5不需要更新。

正在更新[dbo].[IPScanSchedule]

[PK_IPScanSchedule],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[tblNexusInfo]

[_WA_Sys_00000001_75235608],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[CounterDetails]

[PK__CounterD__F12879E477FFC2B3],不需要更新...[_WA_Sys_00000003_76177A41]已更新...[_WA_Sys_00000002_76177A41]已更新...

已更新2 条索引/统计信息,1不需要更新。

正在更新[sys].[queue_messages_1977058079]

[queue_clustered_index],不需要更新...[queue_secondary_index],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[tbl_BLOCKING_CHAINS]

[_WA_Sys_0000000D_76D69450],不需要更新...[_WA_Sys_00000005_76D69450],不需要更新...[_WA_Sys_00000004_76D69450],不需要更新...[_WA_Sys_0000000B_76D69450],不需要更新...

已更新0 条索引/统计信息,4不需要更新。

正在更新[dbo].[IndexPageDefaultLog]

[PK_IndexPageDefaultLog],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[IndexPageInfo]

[PK_IndexPage_Info]已更新...[_WA_Sys_00000002_787EE5A0]已更新...[_WA_Sys_00000006_787EE5A0]已更新...[_WA_Sys_00000009_787EE5A0]已更新...[_WA_Sys_00000019_787EE5A0]已更新...[_WA_Sys_00000003_787EE5A0]已更新...

已更新6 条索引/统计信息,0不需要更新。

正在更新[dbo].[Counter]

[PK_Counter],不需要更新...[IX_Counter],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[sys].[queue_messages_2009058193]

[queue_clustered_index],不需要更新...[queue_secondary_index],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[MonthlyReportEvent]

[PK_MonthlyReportEvent],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[IPScanResult]

[PK_IPScanResult],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[CounterData]

[PK__CounterD__1FB2147B7BD05397],不需要更新...[_WA_Sys_00000003_79E80B25],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[sys].[queue_messages_2041058307]

[queue_clustered_index],不需要更新...[queue_secondary_index],不需要更新...

已更新0 条索引/统计信息,2不需要更新。

正在更新[dbo].[CommentatorScore]

[PK_Commentator_Score_1],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[IndexPageInfoPersonal]

[PK_IndexPageInfoPersonal]已更新...[_WA_Sys_00000002_7C6F7215]已更新...

已更新2 条索引/统计信息,0不需要更新。

正在更新[dbo].[MonthlyReportDetail]

[PK_MonthlyReportDetail],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[NetPolice]

[PK_NetPolice],不需要更新...

已更新0 条索引/统计信息,1不需要更新。

正在更新[dbo].[DisplayToID]

[PK__DisplayT__15B69B8E7FA0E47B],不需要更新...[UQ__DisplayT__FA63CFA6027D5126]已更新...

已更新1 条索引/统计信息,1不需要更新。

已更新了所有表的统计信息。

View Code

f

f

f

f

运算符的解释

f

f

f

第三章 查询优化

c2894848e3c4317da9446c28dc655d6f.png

f

每个IAM页面管理4G的空间,如果一个区不属于拥有该IAM页的对象,则表示该区的位是0,否则是1

6b73d99d6510bc309fcf373ce8abaeee.png

7d6c2e7a87630716f733c9a8a541341a.png

f

doubly linked list双向链表是逻辑顺序

696467908d0b50e65a210d9b19152e0a.png

f

堆表结构

b2dab0262df4ea66828d7b76af9153ec.png

f

聚集表结构

a616fc476e342069544b8eebec3abce2.png

f

索引查找:一般随机I/O

索引扫描:一般顺序I/O

顺序I/O,扫描的页面一般连在一起,比如都在同一个区里面

SELECT INDEXPROPERTY()

5e6aeda0c8595341ae6f4d4d77c55640.png

f

4字节的唯一标识符只存在于非唯一的聚集索引中

8192-96-2=8094- 额外开销字节=8060

400w:2级

40亿:3级

ccdb03bba80e2ab127daca333f1e82a1.png

f

56e12d3d23caebb27e27d77f36129217.png

11176f94a17ced37366af30b64f001fe.png

f

从sqlserver7.0开始

a283dc8a41e0381f2c44e6466079796c.png

f

1d0047778187a1d002716e6e7e0fa5dc.png

819b518c10799be0417dfd910cf9429f.png

f

索引访问方法

ec638c98b33215c8195e73b369657909.png

f

d2ad9f85515fa0e6a45f7ac33ff1301f.png

f

4c291b192be0d3bba6851326e1bcbe7d.png

f

a215fbe4afdd5248879c1ec8735fccbf.png

从sqlserver2000开始才支持降序索引,oracle从8i开始支持降序索引

f

192d5c2360bea55c334cf94e9c764d46.png

segment 段运算符把数据进行分组,每次为下一个运算符(该示例中是top)提供一个组

讨论的关键是segment段运算符按orderdate值对数据分组,每次提供一个组,每个组中的最后一行具有最大的orderid

f

31a515251c38fd29dd1f990f5f3c3200.png

而且lookup总是随机I/O(不是顺序I/O)

f

114ba3e636e7c77116427beb45fd5057.png

f

3ec9edf58ca11c23595ba3eac9062526.png

SQLSERVER2000的图形化执行计划并没有明确区分RID LOOKUP和聚集键lookup,而后者实际是对聚集索引的查找操作

在sqlserver2000中,这两种lookup都被成为bookmark lookup

f

ac26ea9737ec7c101c62c50b3105db86.png

太多的lookup会使该访问方法的成本比直接扫描整个表还要高,sqlserver根据统计信息计算查询选择性

f

2cb1495f60bcdceb5f5d2ee7710a6898.png

lookup的成本是符合条件的行数乘以1(如果是堆),或乘以聚集索引的级数(如果是聚集索引表)

f

3fa014ef754ce096ba42d3284c6b0e23.png

你将得到类似于_WA_Sys_00000002_31B762FC 的统计信息名称,他是sqlserver自动创建的(00000002_31B762FC :两个字节)

sqlserver2005引入了新的基于基数信息(cardinality information)的优化能力,他在内部维护字符串列的子字符串。当你利用like谓词应用模式匹配

筛选器时,他可以评估查询的选择性,甚至当模式以通配符开头时也是如此。而之前的sqlserver版本不具备这种能力

表现生猛的like语句(http://blogs.msdn.com/b/apgcdsd/archive/2011/04/27/like.aspx)

p148

f

22d2a0a25547b2b781655ea9c229176c.png

f

索引交集

3faaa6e4fabc12ed3058caf0a02483b2.png

f

你还应该考虑访问模式(随机/顺序)以及其他因素。随机I/O的成本比顺序I/O要高许多

lookup使用随机I/O,表扫描使用顺序I/O

有序索引扫描的性能很大程度上取决于索引的碎片级别

4026912f07bb642dda1a193e35987356.png

f

a22738a01a0434507209985313a3469f.png

SELECT * FROM sys.[dm_db_index_operational_stats]()SELECT * FROM sys.[dm_db_index_usage_stats]

SQL2005提供了DMF和DMV来查询索引利用率,比sql2000方便

f

外部碎片和内部碎片,平均页密度

48f4cc3ffce3ac82aaef7e6215137808.png

f

sql2005引入联机索引操作,联机重建索引

联机索引操作利用sqlserver2005引入的行版本控制技术row-versioning,当联机重建索引时,sqlserver实际上会维护两个索引

完成该操作后用新索引覆盖旧索引

5c8d1e25eeb48d8563daa74ca0c3f278.png

联机索引操作要求数据库有足够空间,而且比脱机操作慢,如果有维护窗口,最后停机在维护窗口做索引重建

尽管可以联机重建索引,但是运行这些操作会影响系统性能,所以最好在非高峰期执行联机索引重建

重组索引设计冒泡排序算法

重组索引得到的碎片整理级别不像完全重建索引那样理想,而且,总体来看,该操作比重建索引要记录更多日志(所以为什麽碎片率大于30%才重建索引),因此,他更慢

重组索引不能改变填充因子(sqlserver2012)

ALTER INDEX [ix_counttb_id] ON [dbo].[counttb] REBUILD WITH (FILLFACTOR=80)ALTER INDEX [ix_counttb_id] ON [dbo].[counttb] REORGANIZE WITH (FILLFACTOR=80)--消息 155,级别 15,状态 1,第 2 行--'fillfactor' 不是可以识别的 ALTER INDEX REORGANIZE 选项。

DBCC SHOWCONTIG

重组索引不能在线重组

ALTER INDEX [ix_counttb_id] ON [dbo].[counttb] REBUILD WITH (FILLFACTOR=80,ONLINE=ON)ALTER INDEX [ix_counttb_id] ON [dbo].[counttb] REORGANIZE WITH (ONLINE =ON)

消息155,级别 15,状态 1,第 2行'ONLINE' 不是可以识别的 ALTER INDEX REORGANIZE 选项。

重组索引在sqlserver2000中,是唯一的联机碎片整理工具。该操作同时只获取两个页面上的短期锁以确定他们的顺序是否正确,

如果不正确,则互相置换。其次,重建索引操作只能作为一个事务运行,如果他在运行时被中断,整个操作将被回滚。

不像重组索引那样可以在操作两个页面时被中断。当再次运行重组索引时,他可以从上次中断的位置继续进行

f

c90f37e83df7087b80a6eee48dc36c3c.png

sqlserver的重建索引实际上是mysql的copytable方式,需要有足够的空间,而不是inplace方式

在sqlserver2012里在线重建索引丢失数据我觉得是加锁的时间点和时间问题

在覆盖旧索引的时候,解锁,这时候有insert插入数据,然后覆盖,导致解锁时刻insert的数据丢失(这是我想到的的其中一种情况)

mysql重建索引的做法

http://hedengcheng.com/?p=421

inplace:原地

inplace update:原地更新

MySQL AddIndex实现

MySQL各版本,对于add Index的处理方式是不同的,主要有三种:

Copy Table方式

这是InnoDB最早支持的创建索引的方式。顾名思义,创建索引是通过临时表拷贝的方式实现的。

新建一个带有新索引的临时表,将原表数据全部拷贝到临时表,然后Rename,完成创建索引的操作。

这个方式创建索引,创建过程中,原表是可读的。但是会消耗一倍的存储空间。

Inplace方式

这是原生MySQL5.5,以及innodb_plugin中提供的创建索引的方式。所谓Inplace,也就是索引创建在原表上直接进行,不会拷贝临时表。相对于Copy Table方式,这是一个进步。

Inplace方式创建索引,创建过程中,原表同样可读的,但是不可写。

Online方式

这是MySQL5.6.7中提供的创建索引的方式。无论是Copy Table方式,还是Inplace方式,创建索引的过程中,原表只能允许读取,不可写。对应用有较大的限制,因此MySQL最新版本中,InnoDB支持了所谓的Online方式创建索引。

InnoDB的OnlineAdd Index,首先是Inplace方式创建索引,无需使用临时表。在遍历聚簇索引,收集记录并插入到新索引的过程中,原表记录可修改。而修改的记录保存在Row Log中。当聚簇索引遍历完毕,并全部插入到新索引之后,重放Row Log中的记录修改,使得新索引与聚簇索引记录达到一致状态。

与Copy Table方式相比,OnlineAdd Index采用的是Inplace方式,无需Copy Table,减少了空间开销;与此同时,Online AddIndex只有在重放Row Log最后一个Block时锁表,减少了锁表的时间。

与Inplace方式相比,OnlineAdd Index吸收了Inplace方式的优势,却减少了锁表的时间。

http://www.orczhou.com/index.php/2010/04/innodb-plugin-some-feature-2/

InnoDB Plugin在快速DDL上做了一些改进,在做的实验中看到,创建secondary indexes时,大约快了20%。1. 原理

在MySQL5.0里面,如果数据表的记录数很多,增加和删除索引是非常慢的。CREATE INDEX and DROPINDEX命令是通过先创建一个空的临时表,这个表就是你新增或删除索引后的结构,然后把原表中的全部记录都拷贝(插入)到新的临时表中,最后把原表删除,临时表重命名成原表。

MySQL5.1的一些架构上的改变,可以简化上面的过程(不再需要逐行拷贝数据)。InnoDB Plugin利用这个改变,缩短了大多数情况下的索引变更时间。对InnoDB来说有两类索引:theclustered index and secondary indexes。因为InnoDB的主键是the clustered index,数据存放再此,所以,删除或者添加主键(the clustered index)逐行拷贝也是必须的。

InnoDB Pluing在删除一个secondary indexes时,先更改一下InnoDB内部数据字典和MySQL的数据字典,然后把释放的空间归还给InnoDB以供重复使用。如果是增加一个secondary indexes,还是有点复杂的,Plugin先将数据表中的数据取出到memory buffers或者临时表中,并按照新建索引列排好序,然后建立索引的B-Tree。实验表明,这样还是稍微快一些

f

分区

在sqlserver2000中,分区是通过手工创建多个表和一个统一这些表的视图来实现的,相对于sqlserver2000的分区视图

sqlserver2005内置的分区有许多优势

d4c7fa85e69ec8782894256d50ae4abf.png

f

流聚合

5ceb00c5a66ee772a318f70c37835f74.png

f

table spool运算符,他表示一个临时表,用于保存每个不重复app和starttime值组合的会话的合计

SELECT app,MAX(concurrent) ASmxFROM (SELECT app,(SELECT COUNT(*) FROM dbo.bigsessions ASs2WHERE s1.app=s2.appAND s1.starttime>=s2.starttimeAND s1.starttime

8ab303cea0d14286694c52d86225c12c.png

645a36bba6e3cc07cbb39d7034558b81.png

cc100f4750de0da05f260062487259b3.png

actual rebinds和actual rewinds:这两个度量仅与作为nested loops联接内侧的运算符有关,在其他运算符中,rebinds将显示为1,rewinds将显示为0

他们表示内部init方法被调用的次数。重新绑定次数和重绕次数之和等于联接外侧所处理的行数。重新绑定意味着联接的一个或多个参数发生更改后,必须重新计划

联接的内侧。重绕意味着任何相关参数都没有发生更改,可以重用之前的内侧结果集

信息提示框的底部显示该运算符的其他信息,如关联的对象名称、输出、参数等

绑定:确定SQL语句所引用对象的特征检查请求语义是否有意义,例如检查From A join B的查询时,如果A是一个表

B是一个存储过程,则绑定失败

重新绑定表示join运算符的一个或多个相关参数发生变化,内侧必须被重新计算

该过程发生了14次,每对不重复的app和starttime就重新计算一次,表示上述运算符实际执行了14次合计操作

重绕表示没有相关参数发生变化并且原来的内部结果集可以被重用,该过程发生了999986次(1000000-14=999986).

本来,如果数据分布更接近实际情况,合计操作发生的次数要远远大于14,并且查询会更慢。

通过简单地从小型表sessions多次复制来准备示例数据是一个误解,各个列值的分布应该尽可能真实地反映生产环境

f

27c18cb9f4d719ab9da43c47bbce3bf5.png

根据你的输入sqlserver将计算随机值以确定是否返回某页,是否读取一部分数据是以页为单位确定的

意味着你未必会得到与请求数完全相同的行数,只会得到非常接近的值,你请求的行越多,得到的结果集的行数越接近请求的行数

f

SELECT * FROM aa TABLESAMPLE SYSTEM(1000 ROWS)

SELECT * FROM aa TABLESAMPLE SYSTEM(0.1 PERCENT)

dfe7f704b31d9328b8d45ef3cf967066.png

f

SELECT * FROM aa TABLESAMPLE SYSTEM(0.1 PERCENT) REPEATABLE(10)

tablesample子句

24f3630d42d83fd0081e516b1f68c635.png

f

DB2的抽样算法

83442ea4de723c9b2380a990e1c0ce22.png

f

1910e8ec463f0a050281bf80a6eab816.png

流聚合运算符为每个shipperid隔离出最大的orderdate,然后filter运算符筛选出该orderdate值早于‘20010101’的发货人

f

第六章 聚合和旋转数据

用户定义聚合 P373

.NET框架包含了数千个现成的类,可以满足极为苛刻的要求。.net语言不像sql那样是面向数据的,所以你没有这方面的限制。例如正则表达式在验证数据方面是极为有用的

而且被.net完全支持,sql是面向集合的,执行面向行的操作要使用游标,把游标改为CLR代码可以改善性能

clr代码的另一个好处是在计算频繁的操作中他比tsql代码更快

你需要确定你的clr代码在哪里运行,在服务器还是在客户端,在执行计算方面,clr代码通常比tsql更快更灵活

如果服务器端负载过高,你应该考虑一下在客户端执行clr代码是否更适当

6373bd7077ec73e405b25cfc96cdb9e2.png

f

用C#编写UDA

60e4b9030b186a9559aea60f03630d37.png

f

ffc9091cae0d47bd9f8934b79180d9ef.png

F

a9240f90096d4a2aec416f9cc9af7acf.png

F

1e1f79d01e1ebc4a96da1c737cf1c404.png

F

cd876fb20799feffe2996eea2056cb13.png

F

95e3804a5b8b1251e137aff7a5b16072.png

F

UDA必须包含Serializable特性。.net中的序列化表示持久地保存类中的字段值

UDA需要序列化中间结果。序列化的格式可以使用本机格式(native)

表示由sqlserver完成序列化,也可以由用户定义

b81118f460e8f0c75fef2bc29e42b28d.png

F

8ee69d69d1738d889f3ea92d5358dfd9.png

F

查看已注册的clr类型

USE [master]

SELECT * FROM sys.[assemblies]

SELECT * FROM sys.[assembly_modules]

Microsoft.SqlServer.Types 4 1 microsoft.sqlserver.types, version=10.0.0.0, culture=neutral, publickeytoken=89845dcd8080cc91, processorarchitecture=msil 3 UNSAFE_ACCESS 1 2010-04-02 16:59:22.060 2010-04-02 16:59:22.547 0

1a47cf48a8ef6003410f7a44aaa6df4d.png

f

a9357c8d8e4331ab23da4791cdc888af.png

f

第八章 数据修改

select into

d4084baa551db9ed86f2c16bcfb92294.png

f

6c6fa1098a99e00d108690eb4fbeeb1b.png

f

使用openquery把动态sql和exec 存储过程里把结果select * into 临时表

insert into也可以使用openquery

EXEC [sys].[sp_serveroption] @server = [IP,PORT], --sysname

@optname = 'data access', --varchar(35)

@optvalue = N'true' --nvarchar(128)

SELECT * INTO spwho FROM OPENQUERY([IP,PORT],'EXEC SP_WHO') ASO;SELECT * FROM spwho

NSERT INTO [##tmptb]

SELECT *

FROM OPENQUERY([' + @IP

+ '],

N''SELECT CONVERT(VARCHAR(MAX), ps.name) AS partition_scheme ,

6bbd27a65669129b1208f9861c645363.png

F

61ae2f4fb14e07ccea74f9a2bb550972.png

F

3f79b8c32d1166a3f4bcaff08adf2484.png

f

0cf9742b3a86d7d14a84f6089b001e78.png

f

7bb27c5e35ed778cb1c5a6b20670426e.png

f

带有output的insert

通过使用新的output子句,sqlserver2005支持从数据修改语句中返回输出。我们把这一特性看作是“返回结果的DML”

insert ,delete,update语句都支持output子句

在output子句中你可以引用特殊表inserted和deleted

这两个特殊表包含受数据修改语句所影响的行,他们分别包括新增行和修改后的行

旧行和修改之前的行。这里使用inserted和deleted表在触发器中使用的非常相似

a706a17b892651d0a0d6e601b7841ccd.png

f

9761d5d416591824c64609946f5bfd53.png

f

b907fd10b107630f8290a445605e57ae.png

f

序列机制

标识列

54f0efd9311bec1ded96fa5e4357b486.png

f

解决IDENTITY(1,1)的办法,包括异步和同步 生成序列

a63c6e30fda61836a1e32b516bd56d29.png

f

0863650453c5a6ecc6e81e8f910d9b61.png

f

730df65e705a17f413c866ec9d554167.png

f

异步序列

b7a0ed2c0609c3cbf50d457f3e15adf9.png

f

ee393bf59ed1f01289444eeafa7b0420.png

用newid函数创建唯一值,使用UNIQUEIDENTIFIER数据类型保存newid()函数值

因为UNIQUEIDENTIFIER的长度为16字节,这会影响索引大小和联接性能

使用SELECT NEWSEQUENTIALID()函数保证同一台机器上生成的新GUID大于上一次生成的GUID,而newid()函数不保证同一台机器上生成的新GUID大于上一次生成的GUID

SELECT NEWID()CREATE TABLE a(a UNIQUEIDENTIFIER DEFAULT NEWID())

全局唯一标识符序列

f

删除数据

c35e695c91b00f48c4df7206c8461038.png

f

删除有重复行的表数据,表中没有唯一标识值

使用DISTINCT方法要求整行完全重复

SELECT DISTINCT * INTO orderstmp FROMorderdupsDROP TABLEorderdupsEXEC [sys].[sp_rename] @objname = N'orderstmp', --nvarchar(1035)

@newname = orderdups --sysname

f557bb6d5439975a386f821721c74f1c.png

cae4418cc40a71a36baceec79d39f6ad.png

f

44f35d07a43b4e467c21991367b76641.png

f

d92bce9649757303697839e24ee0fc22.png

DELETE FROM OD FROM ORDRRDETAIL ASODTJOIN ORDERA AS O ON O.ID=ODT.XXWHERE O.X=A

delete语句的join

f

c8c5d590bc02649eee76aaccc569973e.png

f

46aa5e8c9980545b779f756b5cc4bcad.png

f

WHILE 1 = 1

BEGIN

DELETE TOP ( 5000)FROMlargeordersWHERE orderdate < '20120101'

IF @@ROWCOUNT < 5000

BREAK

END

USE [sss]

CREATE TABLE [#aa]([id] [INT] IDENTITY(1,1) PRIMARY KEY,[NAME] [CHAR](400) NULL,[ni] [INT] NULL,[txt] [TEXT] NULL,

)SET IDENTITY_INSERT [#aa] ON

DELETE TOP ( 5000)FROM [aa]OUTPUT[Deleted].[NAME]

INTO [#aa](name)WHERE id > 9

SET IDENTITY_INSERT [#aa] OFF

SELECT * FROM [#aa]

SELECT * FROM [aa]

在sqlserver2005中你可以使用delete top代替之前的set rowcount选项

e0e235ecabbaee8b5eaacc4a04be805f.png

--delete数据并存档

WHILE 1 = 1

BEGIN

BEGIN TRAN

DELETE TOP ( 5000)FROMorders

OUTPUT[Deleted].*

INTOordersarchiveWHERE orderdate < '20100101'

IF @@ROWCOUNT < 5000

BEGIN

COMMIT TRAN

BREAK

END

COMMIT TRAN

END

f

如果没有output子句,你需要先查询数据并归档,然后再删除。这种方法既慢又复杂,而且为了保证select和delete之间不会新增符合筛选器的新行(被成为幻影行)你必须用串行隔离级别锁定要存档的数据。而使用output子句,不仅可以得到更好的性能,而且也不用再担心幻影行问题,你可以确保output子句中准确地得到被删除的数据

66b1c01e3ad11e2df0f9a23f64229587.png

f

76651ff4c8283fe8c3f3f378e53162f7.png

f

行值构造器

CTE是在ansi sql  1999中定义的

ae0b4e7299676644d321258edd3b7387.png

f

b6ffe6c56e2452dc30c466c27656d006.png

f

23b414c6d20f5bce95fba9d293e1eb64.png

service broker

f

f28c554f10aa5c3dabd15147aba895a7.png

f

f5c59af51c9038fb059deb0a88bc4f3c.png

UPDATE TOP(10)语法

UPDATE TOP(10) [aa] SET [id]=xx WHERE [id]=xx

f

select赋值,set赋值 的区别

df6c92121c86492d0870cec120b1959b.png

f

a6a11406654b096ea127942eaebba306.png

f

779f376058e5692338cfcb66c8696b82.png

f

DECLARE @i AS INT;SET @i=0;UPDATE t1 SET @i=col1=@i+1

281312616455a1ec37ba8ae84a70c929.png

f

0d969163394256539e71b9da676c796d.png

f

对于写频繁的环境,raid10是最好的

raid5对只读系统比较好,例如数据仓库

sqlserver2000中的触发器访问inserted表和deleted表是使用事务日志,而sqlserver2005访问inserted表和deleted表是使用tempdb

a350924bf4a825b2b70148e85c2ff15f.png

f

最小日志记录:只记录那些在操作期间分配的区地址以支持回滚,不用记录全部更改操作。

BULK操作包括:创建和重新生成索引、使用bulk引擎执行插入(bulk insert)、select into、大型对象log操作

2abde4d7817f4a74cf1695cf58bffc26.png

f

84e5a90b2e2c10ce71547adbc4a42719.png

f

第九章 图,树,层次结构和递归查询

809025c39c57583dca476b10efb84e18.png

f

af9558a562da5e1504226de39901473a.png

f

d148f408aeacdc4980767b29e9792171.png

f

4ae0414276009023c649cb9f10afc8ad.png

f

BOM 物料表(Bill of Material)

c79b8ea4517d9dc22c7a41dfee2f5d07.png

f

迭代 递归

b81e3beeb018558bdb2b29cd65122d8b.png

f

返回指定节点的下属

5d6b622786a0ba70b5159a9e8edf0aa7.png

f

返回指定节点的祖先

7dc9b5457d3b375c6c5aa8b4ced5958c.png

f

闭包

0455c56a76618228491da5f2f8051fa3.png

f

最短路径

9b7d6feeaa80ddcf6f5aa5d14e84fdab.png

f

722e38ee28bf3eb8a6682a5d640f7f2e.png

f

7569c8ec6f77f608072cc74eaaa7f9db.png

f

BOM中的最短路径

6be33b441ef34bf553c93b82be4df774.png

f

c474b32d2e50bd5c6d4498187ea32980.png

f

附录 逻辑难题

0d5ea83ce8d2f6b99946fc208d2fde78.png

f

关于作者

e57c9ab41afe12b77b1daa415addee43.png

f

81967bb56d70bca448c4d775fb628195.png

f

e8bc72793757998942ceda6cdcc87d25.png

f

f

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值