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

来源:互联网 发布:菜青虫 淘宝 编辑:程序博客网 时间:2024/06/08 02:08

参考:http://gaowenjie7758.blog.163.com/blog/static/5946788920091116244306/

 

 

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

SQL Server 中对已经定义的变量赋值的方式用两种,分别是 SET 和 SELECT。对于这两种方式的区别,SQL Server 联机丛书中已经有详细的说明,但很多时候我们并没有注意,其实这两种方式还是有很多差别的。SQL Server推荐使用 SET 而不是 SELECT 对变量进行赋值。当表达式返回一个值并对一个变量进行赋值时,推荐使用 SET 方法。

下表列出 SET 与 SELECT 的区别。请特别注意红色部分。

 setselect同时对多个变量同时赋值不支持支持表达式返回多个值时出错

本人在2005中测试,也报错

表达式未返回值变量被赋null值

本人在2005中测试,变量被赋null值

 

综上所述,set和select的区别在于,select支持同时对多个变量赋值,而set不支持

原创粉丝点击