欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » SQLServer

SQLServer教程

使用子查询可提升 COUNT DISTINCT 速度 50 倍
如果你有一个大的且能够容忍不精确的数据集,那像HyperLogLog这样的概率计数器应该是你最好的选择。但对于需要快速、精准答案的查询,一些简单的子查询可以节省你很多时间。 让我们以我们一直使用的一个简单查询开始:哪个图表的用户访问量最大?<d
发布于 2014年07月15日 11:35 阅读(6652)
怎么样的理解才是完全理解SQL(三)
ANTI JOIN这种连接的关系跟 SEMI JOIN 刚好相反。在 IN 或者 EXISTS 前加一个 NOT 关键字就能使用这种连接。举个
发布于 2014年07月12日 10:29 阅读(5538)
怎么样的理解才是完全理解SQL(二)
如果我们从集合论(关系代数)的角度来看,一张数据库的表就是一组数据元的关系,而每个 SQL 语句会改变一种或数种关系,从而产生出新的数据元的关系(即产生新的表)。我们学到了什么?思考问题的时候从表的角度来思考问
发布于 2014年07月12日 10:18 阅读(6333)
怎么样的理解才是完全理解SQL(一)
很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。我们每天都在写&nbsp
发布于 2014年07月12日 10:08 阅读(6358)
我们是否还一定应该使用存储过程(三)
传言3:存储过程要比 SQL代码更加安全在执行任何SQL语句之前,数据库引擎都会尝试匹配调用者提供的论证信息和所请求资源的访问权限。根据匹配结果,引擎决定是否执行该SQL代码。这样看来,从安全角度存储过程显然
发布于 2013年12月25日 23:03 阅读(6376)
运行的MSSQL系统突然变慢了,应该如何去排查
排除硬件问题,系统变慢了,首先你需要确认是某个特定的操作变慢了,还是所有的操作都变慢。1,如果是某个特定的操作变慢了。1.1,是应用程序变的问题变慢了,还是数据库的问题造成的。 这个可以用Tier Interaction Profil
发布于 2013年12月20日 15:23 阅读(6455)
CTE,临时表,表变量区别跟具体适用场景分析问题(二)
接上文"CTE,临时表,表变量区别跟具体适用场景分析",我们再看一个问题:----------------------------------------------------------------------------------------问题-----
发布于 2013年12月20日 15:12 阅读(7469)
CTE,临时表,表变量区别跟具体适用场景分析
在这之前我们先了解CTE,临时表,表变量的基本概念一、临时表:临时表有两种类型:本地表和全局表。在与首次创建或引用表时相同的 SQL Server 实例连接期间,本地临时表只对于创建者是可见的。当用户与 SQL&n
发布于 2013年12月20日 15:08 阅读(5924)
我们是否还一定应该使用存储过程(二)
传言1:存储过程要比SQL代码执行效率更高SQL是一种语言,用来声明在数据库上想要执行的操作(查询,更新或管理等)。数据库引擎得到的均是文本,就像C#源代码要由编译器处理一样,SQL源码也要必须通过某种方式的编译,以便生成一系列的底层数据库操作,这个输出
发布于 2013年12月13日 22:37 阅读(6401)
我们是否还一定应该使用存储过程(一)
这里我们必须假设,读者都很了解存储过程,存储过程就是关系型数据库中定义的一个子集。随后,连接到该数据库的并提供了必要认识的用户即可以执行这个存储过程。我们认为,这里的子程序一词是理解存储过程的知用范围和好处的关键,且这里我们所说的存储过程的适用范围和好处都是其目前的状态。我们
发布于 2013年12月11日 22:56 阅读(6524)
查询数据库中所有表的数据数量的方法
要查询一个表的数据数量,相信大家很快就想到了select count(1) from table1,但如果我们要查询数据库中所有表的的数据数量要怎么查呢?方法比较多,下面介绍两种本人常用的方法:一,利用sp_spaceused</
发布于 2013年07月18日 21:15 阅读(15119)
SQL Server中Rowcount与@@Rowcount的用法
rowcount的用法:rowcount的作用就是用来限定后面的sql在返回指定的行数之后便停止处理,比如下面的示例,set rowcount 10select * fr
发布于 2013年03月20日 10:41 阅读(38172)
sql server数据库中raiserror函数的用法
sql server数据库中raiserror的作用就和asp.net中的throw new Exception一样,用于抛出一个异常或错误。这个错误可以被程序捕捉到。raiserror的常用格式如下:raiserro
发布于 2013年02月28日 12:33 阅读(10545)
SQL Server查询优化器分析详解(二)
前言为了充分探讨查询优化器使用规则构造执行计划的方式,我们需要一个来确定用于优化特定查询的那些规则。在SQL Server 2005以后,包含了一个未公开的DMV(Dynamic Management View),
发布于 2012年12月29日 10:05 阅读(8171)
SQL Server查询优化器分析详解(一)
SQL Server的优化器对大部分人来说是非常神秘的,现在我们就来看看优化器是如何建立一个可执行的计划,以及其使用的规则。为了说明优化器执行的过程,我们将会通过逐步施加必要的规则的设置,来产生更好的执行计划。下面是一个简单的查询(使用AdventureWorks示
发布于 2012年12月29日 09:55 阅读(8358)
使用Delete删除大量数据后SQL Server性能下降的问题及解决方法
一般情况下,如果我们在sql server中删除大量的数据后,数据库中的数据减少,那么应该提升sql server的性能才对,可今天我们看一个案例,在这个案例中,情况是相反的,使用Delete删除大量数据后SQL Server性能下降的问题</stron
发布于 2012年08月03日 14:59 阅读(9065)
如何在sqlserver中获取表的所有列信息
可能有朋友要说了,这还不简单,在企业管理器或microsoft sql server management studio中展开对应表下面的列信息不就可以看到列的详细信息了么?当然这是可以的,但这里我们主要讲的时如何利用sql语句来查询指定表的列信息。<br /
发布于 2012年07月20日 15:49 阅读(9322)
如何在SqlServer中获取前端连接的IP地址,计算机名等信息
在一些需求中,可能我们需要知道连接到SqlServer的前端程序的一些系统信息,比如前端连接的计算机名称,IP地址,什么时候开始请求连接,什么时候结束连接等信息。如果你对SqlServer的系统函数或视图不太了解,这个功能看起来好像比较复杂,而实际上, SqlServer的动
发布于 2012年07月05日 16:10 阅读(14623)
Sql Server中如何保护数据库对象的定义
先明白什么是数据库对象的定义?比如,我们使用sql语句创建一个表:create table test(id int,name varchar(50))<
发布于 2012年06月22日 14:45 阅读(4049)
Sql Server数据的加密与解密
在sql server中,我们如何为数据进行加密与解密,避免使用者窃取机密数据?对于一些敏感数据,如密码、卡号,一般不能使用正常数值来存储。否则会有安全隐患。以往的加密解密都有前端应用程序来辅助完成。而数据库一般只能加密不能解密。从2005开
发布于 2012年06月22日 14:27 阅读(9851)