zoukankan      html  css  js  c++  java
  • 游标的嵌套以及临时表使用

    1)游标的嵌套使用:

    DECLARE CUR_1 CURSOR--第一层游标声明

    FOR SELECT C_1,C_2 FROM TABLENAME

    OPEN CUR_1

    FETCH NEXT FROM CUR_1 INTO @C_1,@C_2

    WHILE @@FETCH_STATUS=0

    BEGIN

      DECLARE CUR_2 CURSOR--第二层游标声明

      FOR SELECT A_1,A_2 FROM TABLENAME

      OPEN CUR_2

      FETCH NEXT FROM CUR_2 INTO @C_1,@C_2

      WHILE @@FETCH_STATUS=0

      BEGIN

         --语句--

         FETCH NEXT FROM CUR_2 INTO @A_1,@A_2--二层循环

      END

      CLOSE CUR_2

      DEALLOCATE CUR_2

    FETCH NEXT FROM CUR_1 INTO @C_1,@C_2--一层循环  

    END

    CLOSE CUR_1

    DEALLOCATE CUR_1

    定义游标时遇到的问题

    declare cur_temp_2 cursor for (

                select ''''+PAYSUBJECTREF.SUBJECTNAME+':''+'+'convert(varchar,ISNULL(dbo.gsv('+PAYSUBJECTREF.REFCOLNAME+',rcbval),0)) '  from PAYSUBJECTREF,PAYACCOUNTMODESUBJECT

                where PAYSUBJECTREF.SUBJECTID=PAYACCOUNTMODESUBJECT.PAYROLLSUBJECTID

                and ACCOUNTPATTERNID='c8dc9f2b-deac-4a6c-80f6-852a4fea0e2b'

                ORDER BY PAYSUBJECTREF.REFCOLNAME asc)

    会出现:关键字'ORDER' 附近有语法错误。

    将语句改成真确如下:

    declare cur_temp_2 cursor for

                select ''''+PAYSUBJECTREF.SUBJECTNAME+':''+'+'convert(varchar,ISNULL(dbo.gsv('+PAYSUBJECTREF.REFCOLNAME+',rcbval),0)) '  from PAYSUBJECTREF,PAYACCOUNTMODESUBJECT

                where PAYSUBJECTREF.SUBJECTID=PAYACCOUNTMODESUBJECT.PAYROLLSUBJECTID

                and ACCOUNTPATTERNID='c8dc9f2b-deac-4a6c-80f6-852a4fea0e2b'

                ORDER BY PAYSUBJECTREF.REFCOLNAME asc

    不过加括号与不加括号的区别和影响暂时还不清楚

    2)临时表的使用

    临时表

    SQL Server 支持临时表。临时表就是那些名称以井号 (#) 开头的表。

    临时表有两种类型:

    本地临时表

    以一个井号 (#) 开头的那些表名。只有在创建本地临时表的连接上才能看到这些表。

    全局临时表

    以两个井号 (##) 开头的那些表名。在所有连接上都能看到全局临时表。

    在写sp时运用灵活运用临时表可以存放复杂sql语句查询的结果,以便做其他操作

  • 相关阅读:
    guava cache 缓存
    策略模式干掉if-else,switch
    一.投资理论
    死锁问题
    Redis连接数居高不下的问题
    Entity Framework Core To SQL问题
    数据字典
    Core2.0升级2.2
    NetCoreAPI版本控制
    WEBAPI的请求方式与请求类型
  • 原文地址:https://www.cnblogs.com/yu-and-ze/p/4717320.html
Copyright © 2011-2022 走看看