摘要: SQL Server的查询优化器是一个基于成本的优化器。它为一个给定的查询分析出很多的候选的查询计划,并且估算每个候选计划的成本,从而选择一个成本最低的计划进行执行。实际上,因为查询优化器不可能对每一个产生的候选计划进行优化,所以查询优化器会在优化时间和查询计划的质量之间进行一个平衡,尽可能的选择一 阅读全文
posted @ 2019-01-15 16:41 好奇未必害死猫 阅读(1173) 评论(0) 推荐(0) 编辑
摘要: 一般开发员只会应用SQL的四条经典语句:select,insert,delete,update。但是我从来没有研究过它们的工作原理,这篇我想说一说select在数据库中的工作原理。 B/S架构中最经典的话题无非于三层架构,可以大概分为数据层,业务逻辑层和表示层,而数据层的作用一般都是和数据库交互,例 阅读全文
posted @ 2019-01-15 16:38 好奇未必害死猫 阅读(2862) 评论(0) 推荐(0) 编辑
摘要: SQL 查询所有表名: SELECT NAME FROM SYSOBJECTS WHERE TYPE='U' SELECT * FROM INFORMATION_SCHEMA.TABLES 查询表的所有字段名: SELECT NAME FROM SYSCOLUMNS WHERE ID=OBJECT_ID(' 表名' ) SELECT * FROM INFORMATION_SCHEMA.TABLE... 阅读全文
posted @ 2019-01-15 16:36 好奇未必害死猫 阅读(2636) 评论(0) 推荐(0) 编辑
摘要: Declare @TableName Varchar(20); SET @TableName='数据库表名'; --SELECT TE.字段名+',' --FROM ( SELECT (case when a.colorder=1 then d.name else '' end) 表名 ,a.colorder 字段序号,a.name 字段名 ,(case when C... 阅读全文
posted @ 2019-01-15 16:35 好奇未必害死猫 阅读(241) 评论(0) 推荐(0) 编辑
摘要: /* 查询SQL执行情况 包含逻辑读取信息,执行信息等情况*/ 阅读全文
posted @ 2019-01-15 16:34 好奇未必害死猫 阅读(799) 评论(0) 推荐(0) 编辑
摘要: /* 用来显示有关由 Transact-SQL 语句生成的磁盘活动量的信息。*/DBCC DROPCLEANBUFFERS --清空缓存set statistics io on --开启set statistics io off --开启 显示磁盘预估时间SET STATISTICS TIME on 阅读全文
posted @ 2019-01-15 16:33 好奇未必害死猫 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 由于Elasticsearch和MongoDB/Redis/Memcache一样,是非关系型数据库。而平常使用的MySql,Oracle,SQLServer 等为关系型数据库,二者有着本质的区别,Es查询语句使用的是DSL语言,关系式数据库使用的是T-SQL,虽然语言不同,但是有时候,一些功能还是有 阅读全文
posted @ 2019-01-15 15:53 好奇未必害死猫 阅读(3130) 评论(0) 推荐(1) 编辑