Welcome 微信登录

首页 / 数据库 / SQLServer

sqlserver 多表关联时在where语句中慎用trim()方法

sqlserver 多表关联时在where语句中慎用trim()方法

类似如下: select A.key,B.key,C.key from A,B,C where trim(A.key)=trim(B.fk) and trim(A.col)=trim(C.pk)。 在主表A(200多条记录)关联附表B(4万多条记录)时用了1秒钟时间,该值在不同机器执行可能有所差异,但比不加trim速度稍微慢一些,但是不是特别明显。 其sql语句类似如下: select A.key,B.key from A,B where trim(A.k...
union组合结果集时的order问题

union组合结果集时的order问题

近日,在一个项目中用到union组合两个select结果,调试sql时总是报错,所报错误也只是说在union附近有问题,因为sql中用到了group,我想也许是union不支持吧,由于时间紧,就先在程序中做了合并处理。但程序员对于代码的完美性要求总是不能放弃的,所以,常常会有如鲠在喉的感觉,不搞明白心里会不舒服。 仔细查看了MS的在线帮助,在有关UNION的描述中找到这样一段说明: 如果使用 UNION 运算符,那么各个 SELECT 语句不能包含它们自己...
sqlserver 中ntext字段的批量替换(updatetext的用法)

sqlserver 中ntext字段的批量替换(updatetext的用法)

一、问题描述: 1。在Sql Server 中,ntext/text/image 字段不允许应用replace函数替换内容; 2。通过convert字段转换,可以把ntext字段转换为varchar(8000),然后用Relpace函数替换,不过,此方法,对于字段长度大于8000的ntext字段无效。 二、问题解决 整理通用存储过程,代码如下: 复制代码 代码如下: CREATE procedure [dbo].[Proc_UpdateNTextField...
SQLSERVER中union,cube,rollup,cumpute运算符使用说明

SQLSERVER中union,cube,rollup,cumpute运算符使用说明

/* --1 UNION 运算符是将两个或更多查询的结果组合为单个结果集 使用 UNION 组合查询的结果集有两个最基本的规则: 1。所有查询中的列数和列的顺序必须相同。 2。数据类型必须兼容 a.UNION的结果集列名与第一个select语句中的结果集中的列名相同,其他select语句的结果集列名被忽略 b.默认情况下,UNION 运算符是从结果集中删除重复行。如果使用all关键字,那么结果集将包含所有行并且不删除重复行 c.sql是从左到右对包含UNI...
系统存储过程sp_MSforeachtable和sp_MSforeachdb使用说明

系统存储过程sp_MSforeachtable和sp_MSforeachdb使用说明

1.简介: 作为DBA会经常需要检查所有的数据库或用户表,比如:检查所有数据库的容量;看看指定数据库所有用户表的容量,所有表的记录数...,我们一般处理这样的问题都是用游标分别处理处理,比如:在数据库检索效率非常慢时,我们想检查数据库所有的用户表,我们就必须通过写游标来达到要求;如果我们用sp_MSforeachtable就可以非常方便的达到相同的目的:EXEC sp_MSforeachtable @command1="print "?" DBCC CHE...
<< 91 92 93 94 95 96 97 98 99 100 >>