zoukankan      html  css  js  c++  java
  • sql server select和set赋值的区别

      --SQL Server中对已经定义的变量赋值的方式用两种,分别是 SET 和 SELECT

      --当表达式返回一个值并对一个变量进行赋值时,推荐使用 SET 方法

    (1)SELECT可以在一条语句里对多个变量同时赋值,而SET只能一次对一个变量赋值   

        select @para_1 = '1',@para_2 = '2';

        而set要达到同样的效果,需要:

        set @para_1 = '1'

        set @para_2 = '2'

    (2)表达式返回多个值时,用SET将会出错,而SELECT将取最后一个值

        假设:table_1表有多个sex记录

        select @para_1 = sex from table_1 --将取最后一个值

        set @para_1 = sex from table_1 --将报错

    (3)表达式无返回值时,用SET将置变量值为NULL,用SELECT变量将保持原值

        假设:table_1表为空

        set @para_1 = '初始值'

        select @para_1 = sex from table_1 --此时@para_1为‘初始值’

        set @para_1 = sex from table_1 --此时@para_1为null

    (4)使用标量子查询时,如果无返回值,SET和SELECT一样,都将置为NULL

        假设:table_1表为空

        set @para_1 = '初始值'

        select @para_1 = (select sex from table_1) --此时@para_1为null

        set  @para_1 = (select sex from table_1) --此时@para_1为null

         

    要么生,要么死
  • 相关阅读:
    [翻译] GCDObjC
    [翻译] ValueTrackingSlider
    [翻译] SWTableViewCell
    使用 NSPropertyListSerialization 持久化字典与数组
    [翻译] AsyncImageView 异步下载图片
    KVC中setValuesForKeysWithDictionary:
    [翻译] Working with NSURLSession: AFNetworking 2.0
    数据库引擎
    什么是数据库引擎
    网站添加百度分享按钮代码实例
  • 原文地址:https://www.cnblogs.com/llljpf/p/6552837.html
Copyright © 2011-2022 走看看