zoukankan      html  css  js  c++  java
  • MSSQLSERVER数据库- 上移和下移的存储过程

    做一下备忘

    MOVEUP:

    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    go
    
    
    
    
    
    ALTER PROCEDURE [dbo].[Proc_MoveUp] 
        @id int
    AS
    BEGIN
    
        declare @preSort int;--上一条记录的排序值
        declare @preid int; --上一条记录的id值
        declare @curSort int;--当前记录的排序值
    
        with TB As (select top 1000 *,row_number() over(order by Sort desc,id desc) as rowid from T_Move order by Sort desc,id desc)
        select @preSort=sort,@preid=id from TB where rowid=(select rowid+1 from TB where id=@id);
        select @curSort=Sort From T_Move Where id=@id;
    
        update T_Move set Sort=@preSort where id=@id;
        update T_Move set SOrt=@curSort where id=@preid
    
    
    END

    MOVEDOW:

    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    go
    
    
    
    
    
    ALTER PROCEDURE [dbo].[Proc_MoveDown] 
        @id int
    AS
    BEGIN
    
        declare @nextSort int;--上一条记录的排序值
        declare @nextid int; --上一条记录的id值
        declare @curSort int;--当前记录的排序值
    
        with TB As (select top 1000 *,row_number() over(order by Sort desc,id desc) as rowid from T_Move order by Sort desc,id desc)
        select @nextSort=sort,@nextid=id from TB where rowid=(select rowid-1 from TB where id=@id);
        select @curSort=Sort From T_Move Where id=@id;
    
        update T_Move set Sort=@nextSort where id=@id;
        update T_Move set SOrt=@curSort where id=@nextid
    
    END
  • 相关阅读:
    MySQL基础_常见命令
    数据库概述
    Nginx学习笔记
    华为OSPF基础配置实验
    华为RIPv2实验
    华为三层交换实验
    web-debug-server
    花一天时间试玩vsphere6.7(EXSI)服务器版的vmware
    haproxy+keepalived练习
    mailx加163邮箱发邮件
  • 原文地址:https://www.cnblogs.com/cxeye/p/3591067.html
Copyright © 2011-2022 走看看