您正在使用IPV4(3.236.253.192)访问本站 您本次共访问本站 1 次
 用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器 行情 简化版
文明驾车我带头,文明行路我带头,礼貌让座我带头      

[公益] 节省一分零钱 献出一份爱心 温暖世间真情       【腾讯云】云产品限时秒杀,爆款1核2G云服务      
虚位以待
2021年 冬至节 56
2021年 圣诞节 60
2022年 元 旦 67
2022年 春 节 98
 
  • 本类新增
    本类热门文章
    您现在的位置:首页 >> 数据库 >> 内容
    Sql Server使用cursor处理重复数据过程详解
    内容摘要: CREATEPROCHandleEmailRepeatASDECLAREemailCURSORFORSELECTe.email,e.OrderNo,e.TrackingNoFROMEmail20140725ASeWHEREe.[status]=0ORDERBYe.email,e.OrderNo,e.TrackingNoBEGINDECLARE@@emailV......
    CREATEPROCHandleEmailRepeat

    AS

    DECLAREemailCURSOR

    FOR

    SELECTe.email

    ,e.OrderNo

    ,e.TrackingNo

    FROMEmail20140725ASe

    WHEREe.[status]=0

    ORDERBY

    e.email

    ,e.OrderNo

    ,e.TrackingNo


    BEGIN

    DECLARE@@emailVARCHAR(200)

    ,@firstEmailVARCHAR(200)

    ,@FirstOrderNOVARCHAR(300)

    ,@FirstTrackingNOVARCHAR(300)

    ,@NextEmailVARCHAR(200)

    ,@@orderNOVARCHAR(300)

    ,@NextOrderNOVARCHAR(50)

    ,@@trackingNOVARCHAR(300)

    ,@NextTrackingNOVARCHAR(50)


    BEGIN

    OPENemail;

    [email protected],@FirstOrderNO,@FirstTrackingNO;

    [email protected],@NextOrderNO,@NextTrackingNO;

    [email protected][email protected]

    BEGIN

    INSERTINTOEmail20140725Test

    (

    email

    ,OrderNo

    ,TrackingNo

    )

    VALUES

    (

    @firstEmail

    ,@FirstOrderNO

    ,@FirstTrackingNO

    );

    SET@@[email protected];

    SET@@[email protected];

    SET@@[email protected];

    END

    ELSE

    BEGIN

    SET@@[email protected];

    SET@@[email protected]+'、[email protected];

    SET@@[email protected]+'、[email protected];

    END




    [email protected],@NextOrderNO,@NextTrackingNO

    WHILE@@fetch_status=0

    BEGIN

    [email protected]=@@email

    BEGIN

    IF(@NextOrderNO!=@@orderNO)

    SET@@orderNO=@@orderNO+'、[email protected]


    PRINT'orderNO:'+@@orderNO


    IF(@@[email protected])

    SET@@trackingNO=@@trackingNO+'、[email protected]


    PRINT'trackingNO:'+@@trackingNO

    END

    ELSE

    BEGIN

    INSERTINTOEmail20140725Test

    (

    email

    ,OrderNo

    ,TrackingNo

    )

    VALUES

    (

    @@email

    ,@@orderNO

    ,@@trackingNO

    );

    SET@@[email protected];

    SET@@[email protected];

    SET@@[email protected];

    END

    [email protected],@NextOrderNO,@NextTrackingNO;

    END

    CLOSEemail;--关闭游标

    DEALLOCATEemail;--释放游标

    END

    END

    版权声明:本内容来源于互联网,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
    上一篇:SQL SERVER数据库表记录只保留N天 下一篇:sqlserver登陆后报不能为空不能为null的错
    发布日期:2021/9/15
    手机扫二维码直达本页
    发布时间:11:47:13
    点击:390
    录入:齐天大圣
    相关文章
    Baidu
    YiJiaCMS 6.0.6.10688 Build 21.10.13(MSSQL) 闽ICP备05000814号-1
    本空间由景安网络提供,百度云加速提供加速防护
    ©2000-2021