#sq

【Transact-SQL】让人快遗忘的游标

原文:【Transact-SQL】让人快遗忘的游标最初学SQLServer的时候,当学到游标的时候,突然有了一种亲切感,因为这种通过一个while循环,一条一条的处理数据的方式,很像学过的过程式语言,与C语言很相似。慢慢的,对一些稍微复杂一点的SQL,往往就会想到用游标去处理。也正是因为大量使用,渐渐的,在使用的过程中...

【Transact-SQL】SQL Server自动把left join自动转化为inner join、以及关联时的数据重复问题

原文:【Transact-SQL】SQLServer自动把leftjoin自动转化为innerjoin、以及关联时的数据重复问题 1、SQLServer自动把leftjoin自动转化为innerjoin的问题: 下面的两个语句都是leftjoin的,但是一个却转化成了innerjoindroptab...

【Transact-SQL】找出不包含字母、不包含汉字的数据

原文:【Transact-SQL】找出不包含字母、不包含汉字的数据 测试的同事,让我帮忙写个sql语句,找出表中xx列不包含汉字的行。 下面的代码就能实现。 IFEXISTS(SELECT*FROMsys.tablesWHEREname='t')DROPTABLEtgoCREATETABL...

SQL Server中语句的自动参数化

原文:SQLServer中语句的自动参数化 usemastergoifexists(select*fromsys.databaseswherename='test')dropdatabasetestgo--创建数据库createdatabasetestifexists(select*fromsys.table...

【SQL Server性能优化】删除大量数据的方法比较

原文:【SQLServer性能优化】删除大量数据的方法比较如果你要删除表中的大量数据,这个大量一般是指删除大于10%的记录,那么如何删除,效率才会比较高呢? 而如何删除才会对系统的影响相对较小呢?下面先做一个实验,然后对这个实验的结果进行分析,然后得出结论。1、创建数据库usemastergoifexists...

通过SQL Server的扩展事件来跟踪SQL语句在运行时,时间都消耗到哪儿了?

原文:通过SQLServer的扩展事件来跟踪SQL语句在运行时,时间都消耗到哪儿了?问题就是,一个很简单的语句,在不同的服务器上执行,所需要的时间相差很大,特别提到在性能差的服务器上反而快,在性能好的服务器上反而慢,他想知道这是为什么? 对这个问题,我的回答是: 从表面看,很难分析出为什么多台机器执...

【SQL Server备份恢复】维护计划实现备份:每周数据库完整备份、每天差异备份、每小时日志备份

原文:【SQLServer备份恢复】维护计划实现备份:每周数据库完整备份、每天差异备份、每小时日志备份 在数据库管理中,数据库备份是非常重要的。 通过维护计划向导,可以很方便的完成数据库备份。下面的例子说明了如何实现数据库的备份,具体的备份策略是:每周日一次完整备份、每天差异备份(除周日外)、每小时...

【SQL Server性能优化】运用SQL Server的全文检索来提高模糊匹配的效率

原文:【SQLServer性能优化】运用SQLServer的全文检索来提高模糊匹配的效率今天去面试,这个公司的业务需要模糊查询数据,之前他们通过mongodb来存储数据,但他们说会有丢数据的问题,我从业务上了解到,显然对他们公司而言,丢数是绝对不能允许的。 另外,他们说之前也用过SQLServer的全文检索,...

【Transact-SQL】统计某字段中的值第一次出现后的2小时内出现的次数

原文:【Transact-SQL】统计某字段中的值第一次出现后的2小时内出现的次数 table1namecreatedatea2011-03-0110:00:00a2011-03-0111:00:00a2011-03-0114:00:00b2011-03-0113:00:00b2011-03-0113:20:...

【Transact-SQL】计算整个表中所有值的出现的次数

原文:【Transact-SQL】计算整个表中所有值的出现的次数一个表有3列,5行,那么一共有15个值,现在要计算整个表中所有值在表中出现的次数,不过这里表的列数是不确定的,上面的例子是3列,实际上也有可能是5列、20列,所以解决问题的步骤是这样的:1、必须知道有多少列,然后构造动态语句,把这些列合并到一列中。2、然后...

SQL优化中的重要概念:事务

原文:SQL优化中的重要概念:事务 sql优化和事务有关系?从表面上看,让sql跑的更快,似乎和事务这个概念没什么联系,但是关系数据库中最重要的2个概念就是关系、事务。关系,对应到sql中,是通过主外键以及join来实现的,当然,没有主外键,照样能关联表。事务,是数据库提供的,特别是在高并发的情况下,保障数据...

SQL优化中的重要概念:锁定

原文:SQL优化中的重要概念:锁定 上篇文章讲的是事务,这篇就引出另一个重要概念,就是锁定。当一个用户要读取另一个用户正在修改的数据,或者一个用户正在修改另一个用户正在读取的数据,或者一个用户要修改另一个用户正在修改的数据,就会出现并发问题。锁定能防止并发问题。资源的锁定方式称为锁定模式,SQLServer中...

SQL优化中的重要概念:阻塞

原文:SQL优化中的重要概念:阻塞 上一篇讲到锁定的概念,那么接下来就是如何找到由于锁定而发生阻塞的进程,并解决阻塞问题。1、会话1,修改数据,但没有提交事务BEGINTRANselect@@SPID--输出:287UPDATEtSETv='88888'WHEREidd=12、会话2,由于会话一事务没有提交,...

SQL优化中的重要概念:死锁

原文:SQL优化中的重要概念:死锁 上面几篇文章讲到事务、锁定、阻塞,最后还有一种比较极端的情况,就是死锁,这也是锁定、阻塞的一种情况。死锁是当两个事务分别锁定了资源,而又继续请求对方已获取的资源,那么就会产生死锁。发生死锁的原因:A、会话以不同的顺序访问表。B、会话长时间运行事务,在一个事务中更新了很多表或...

SQL Server系统函数:系统信息函数

原文:SQLServer系统函数:系统信息函数 1、会话id,服务器信息、用户信息select@@SPID,--返回当前连接的会话ID:SPID@@servername,--SQLServer实例名称@@sevicename,--SQLServer版本信息APP_NAME(),--客户端连接的应用程序名称HO...
首页上一页...750751752753754...下一页尾页