千家信息网

T-SQL中变量赋值(SET与SELECT)的差别

发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,SQL Server 中对已经定义的变量赋值的方式有两种,分别是 SET 和 SELECT。以下为两种方式赋值的差异对比:setselect同时对多个变量同时赋值不支持支持表达式返回多个值时出错将返回
千家信息网最后更新 2024年11月20日T-SQL中变量赋值(SET与SELECT)的差别

SQL Server 中对已经定义的变量赋值的方式有两种,分别是 SET 和 SELECT。
以下为两种方式赋值的差异对比:

setselect
同时对多个变量同时赋值不支持支持
表达式返回多个值时出错将返回的最后一个值赋给变量
表达式未返回值变量被赋null值变量保持原值

SQL Server推荐使用 SET 而不是 SELECT 对变量进行赋值。
当表达式返回一个值并对一个变量进行赋值时,推荐使用 SET 方法。

注意:SELECT 也可以将标量子查询的值赋给变量,如果标量子查询不返回值,则变量被置为 null 值。此时与 使用 SET 赋值是完全相同的

0