zoukankan      html  css  js  c++  java
  • Select的迭代方法

    --迭代方法
    DECLARE @ManagerStringCode VARCHAR(100)
    DECLARE @TeamStringCode VARCHAR(100)
    declare @cSalesUserID NVARCHAR(12)

    SET @ManagerStringCode = ''
    SET @TeamStringCode = ''
    --SET @cSalesUserID = 'AndyLau'
    SET @cSalesUserID = 'LAWRENCEKOK'

    SELECT @ManagerStringCode = @ManagerStringCode +
        (CASE WHEN CHARINDEX(SalesManger.dmb_cMemberUserID, @ManagerStringCode) >0 THEN '' ELSE (SalesManger.dmb_cMemberUserID + ';') end)
        , @TeamStringCode = @TeamStringCode + RTRIM(SalesManger.dmb_cTeamCode) + ';'
    FROM DeptTeamMember_dmb Sales WITH(NOLOCK)
    LEFT JOIN DeptTeamMember_dmb SalesManger on SalesManger.dmb_cDeptCode = 'SAL'
       WHERE Sales.dmb_cMemberUserID =@cSalesUserID
    AND Sales.dmb_cTeamCode = SalesManger.dmb_cTeamCode and SalesManger.dmb_cMemberType = 'L'
    AND Sales.dmb_cDeptCode = 'SAL'

    IF LEN(@ManagerStringCode)>0
    SET @ManagerStringCode = LEFT(@ManagerStringCode,LEN(@ManagerStringCode)-1)

    SELECT @ManagerStringCode, @TeamStringCode

    ----迭代方法

    --Cursor方法
    Declare @SalesManger Nvarchar(12)
    Declare @ManagerStringCode VARCHAR(100)
    Declare @Separator varchar(2)
    SET @Separator = ';'

    declare @cSalesUserID NVARCHAR(12)

    SET @cSalesUserID = 'LAWRENCEKOK'

    Declare SalesMangerCursor Cursor For
    Select SalesManger.dmb_cMemberUserID
    From DeptTeamMember_dmb Sales
    left join DeptTeamMember_dmb SalesManger on SalesManger.dmb_cDeptCode = 'SAL'
    Where Sales.dmb_cMemberUserID = @cSalesUserID
    and Sales.dmb_cTeamCode = SalesManger.dmb_cTeamCode and SalesManger.dmb_cMemberType = 'L'
    AND Sales.dmb_cDeptCode = 'SAL'

    Open SalesMangerCursor

    FETCH NEXT FROM SalesMangerCursor INTO @SalesManger

    WHILE (@@FETCH_STATUS = 0)
    Begin
    Select @ManagerStringCode = dbo.ufn_SerialString(@ManagerStringCode,@SalesManger,@Separator)

    FETCH NEXT FROM SalesMangerCursor INTO @SalesManger
    END

    CLOSE SalesMangerCursor
    DEALLOCATE SalesMangerCursor

    SELECT @ManagerStringCode

    --Cursor方法

  • 相关阅读:
    PHP atanh() 函数
    PHP atan2() 函数
    PHP atan() 函数
    #检查磁盘使用率超过90%,并且后台进程没有rman在跑,就运行 /data/script/del_dg_arch.sh 脚本清理归档
    [学习笔记]自适应辛普森积分
    C# 如何写 DEBUG 输出
    C# 如何写出一个不能被其他程序集继承的抽象类
    C# 如何写出一个不能被其他程序集继承的抽象类
    C# 如何引用 WshShell 类
    C# 如何引用 WshShell 类
  • 原文地址:https://www.cnblogs.com/guyuehuanhuan/p/1942268.html
Copyright © 2011-2022 走看看