易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL存储过程中SELECT与SET 对变量赋值的区别

参考:http://gaowenjie7758.blog.163.com/blog/static/5946788920091116244306/
SQL存储过程中SELECT与SET 对变量赋值的区别
SQL Server 中对已经定义的变量赋值的方式用两种,分别是 SET 和 SELECT。对于这两种方式的区别,SQL Server 联机丛书中已经有详细的说明,但很多时候我们并没有注意,其实这两种方式还是有很多差别的。SQL Server推荐使用 SET 而不是 SELECT 对变量进行赋值。当表达式返回一个值并对一个变量进行赋值时,推荐使用 SET 方法。
下表列出 SET 与 SELECT 的区别。请特别注意红色部分。
 
set
select
同时对多个变量同时赋值
不支持
支持
表达式返回多个值时
出错
本人在2005中测试,也报错
表达式未返回值
变量被赋null值
本人在2005中测试,变量被赋null值
综上所述,set和select的区别在于,select支持同时对多个变量赋值,而set不支持


相关文档:

SQL语句创建数据库

1.create database dataname
这是创建数据库最简单的方法.数据库的各个属性都是默认.如数据库文件与日志文件存储目录.数据库大小等.
下面介绍下常用决定数据库属性的子句.
on:简单理解为定义存储数据库文件的位置,看下面代码.
filename:数据库的逻辑别名
size:数据库初始大小
maxsize:数据库初大容量
fil ......

SQL Server 索引结构及其使用(三)

SQL Server 索引结构及其使用(三)
作者:freedk
一、深入浅出理解索引结构
二、改善SQL语句
实现小数据量和海量数据的通用分页显示存储过程
  建立一个 Web 应用,分页浏览功能必不可少。这个问题是数据库处理中十分常见的问题。经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自带的分页功能(利用游 ......

SQl Code表设计

在Asp.net后有很多常用的表结构 membership就是一个典型,除此还有code表
CREATE TABLE [dbo].[CodeTables](
    [CodeTableID] [uniqueidentifier] NOT NULL,
    [ParentCodeTableID] [uniqueidentifier] NULL,
    [Name] [varchar](200) COLLATE SQL_Latin1_General_ ......

sql in优化

客户反映程序很慢,开始以为数据量大,在表中查询使用的字段上,添加了索引,没有明显的效果,检查时发现以前的同事在sql server中写的函数中使用了in,而在in的结果集中会有2500条记录左右,执行时间需要13秒。找到问题根源,
修改方法: 把in后面的子查询作为一个表和主表关联,添加限制条件。
原来写法: select * fro ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号