排序,排序演算法

來源:互聯網
上載者:User

排序,排序演算法

--編寫排序的問題,例如 1、2、3、4、5、6這樣的排列號--思路:(1)如果1變成5,那麼就是1直接變5,2、3、4、5 分別減1,6不變--(2)如果5變成3,那麼5直接變成3,1、2不變,3、4減1,6不變--(3)例如:3變成6,那麼6是目標值,3是欲成為目標的值--(4)用事務或者預存程序實現--(5)要傳的參數分別是:表名,目標值,欲成為目標的值,識別欄位(例如ID)Create proc [dbo].[pro_woqu]@ID int ,--ID值@targetValue int ,--目標值@wishtargetValue int,--欲成為目標的值@tableName varchar(100)asbegin tranupdate [User] set DisplayOrder=@targetValue where ID=@ID;if(@targetValue<@wishtargetValue)--如果5變成3,那麼5直接變成3,1、2不變,3、4減1,6不變begin update [User]set DisplayOrder=DisplayOrder+1 where DisplayOrder>=@targetValue and DisplayOrder<@wishtargetValue and ID!=@ID and ParentID=0endif(@targetValue>@wishtargetValue)--3變成6,那麼6是目標值,3是欲成為目標的值beginupdate [User]set DisplayOrder=DisplayOrder-1 where DisplayOrder<=@targetValue and DisplayOrder>@wishtargetValue and ID!=@ID and ParentID=0endif @@error<>0 begin  rollback tranreturn 0endelse begin commit tranreturn 1end


SQL裡面的排序語句desc與ASC有什不同

用 DESC 表示按倒序排序(即:從大到小排序)
用 ACS 表示按正序排序(即:從小到大排序)
 
SQL裡面的排序語句desc與ASC有什不同

用 DESC 表示按倒序排序(即:從大到小排序)
用 ACS 表示按正序排序(即:從小到大排序)
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.