• SQL NOTEVARIABLE


    GOTO 可以直接跳转到制定的标签
    DECLARE @ID INT;
    SET @ID=10;
    IF(@ID=1)
    BEGIN
        GOTO myOk;
    END
    ELSE
    BEGIN
        GOTO myError;
    END
    
    myOk: PRINT 'OK';
    myError: PRINT 'Error';
    
    --=============================================================================================
    WAITFOR:
    1: WAITFOR DELAY '0:00:01';
    2: WAITFOR TIME '12:00:00';
    
    RETURN: Break the current batch and return value or nothing
    RAISEERROR: Throw an error and continue to execute the next statement;
    
    RAISERROR(N'error message',---message
        10,--Severity,
        1,--Error state
        'Para1'--Parameter)
    
    --=============================================================================================
    
    全局变量(Global variable)使用@@作为前缀,由系统定义,在实例范围内可见,对用户只读
    局部变量(Local variable)使用@作为前缀,在定义局部变量的批处理中可见,由用户创建、赋值或修改。
    
    使用Declare来对局部变量声明,声明类型不能为Text/NText/Image类型,当声明为字符类型且没有指定长度时,默认长度为1;
    
    所有为赋值的局部变量默认值为null;
    
    可以使用SET和SELECT对局部变量赋值,在SELECT中对局部变量赋值时,如果SELECT查询结果为多行时,则使用最后一行的值对局部变量赋值。
    
    
    DECLARE @ID NVARCHAR(200)
    SELECT @ID=C1 FROM dbo.T1
    SELECT @ID
    
    DECLARE @ID NVARCHAR(200)
    SET @ID=(SELECT TOP(1)C1 FROM dbo.T1)
    SELECT @ID
    --=============================================================================================
    
    局部变量存在存在内存中(包括局部表变量)。
    
    局部表变量是一种特殊的局部变量,与临时表有本质区别,不能在局部表变量上添加索引。
    
    DECLARE @T TABLE
    (
        UserID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
        UserName NVARCHAR(20)
    )
    
    INSERT INTO @T(UserName)
    SELECT 'U1'
    UNION ALL
    SELECT 'U2'
    
    SELECT * FROM @T
    --=============================================================================================
    
    集合操作
    集合合并:UNION/UNION ALL
    集合相交:INTERSECT
    集合相减:EXCEPT
    
    在集合操作中,NULL会被当做同一个值看待。
    
    
    --=============================================================================================
  • 相关阅读:
    9011,9012,9013,9014,8050,8550三极管的区别
    XP制动关机CMD命令
    搭建系统框架发现的三个Web.Config问题
    监听公众号返回按钮,直接退出到公众号页面
    微信公众号h5页面自定义分享
    博客园页面设置
    js 中加减乘除 比较精确的算法,js本身有些运算会出错,这里给出较精确的算法
    HTML属性
    HTML属性
    处理ajax数据;数据渲染(细节)
  • 原文地址:https://www.cnblogs.com/TeyGao/p/2726221.html
Copyright © 2020-2023  润新知