sql select id in的排序問題

2021-04-13 12:52:18 字數 554 閱讀 4778

select * from [test] where id in (3,2,4,5,8,6) order by charindex(cast(id as varchar),'3,2,4,5,8,6') 

這是對select where in類的排序

還有select in的總結

如果用儲存過程實現select in

如id為int型 f_id為varchar 假如f_id為1,2,5,6

select * from [test] where id in (f_id)在儲存過程中給id和f_id傳入引數的話 像下面的儲存過程就會出錯

create procedure [dbo].[getinfo]

@id int,@f_id varchar  

as select * from [test] where @id in (@f_id)就會出錯

改為:decalre @str

set @str='select * from [test] where '+@id in +'('+@f_id+')'

exec (@str)就ok了 

RPG的錯排(組合數 錯排)

problem description 今年暑假杭電acm集訓隊第一次組成女生隊,其中有一隊叫rpg,但做為集訓隊成員之一的野駱駝竟然不知道rpg三個人具體是誰誰。rpg給他機會讓他猜猜,第一次猜 r是公主,p是草兒,g是月野兔 第二次猜 r是草兒,p是月野兔,g是公主 第三次猜 r是草兒,p是公主...

快排和堆排

一 快速排序 最常用的排序演算法,速度通常也是最快的。時間複雜度 o nlogn 最壞 o n 2 空間複雜度 o nlgn 不穩定 比如 5 3 3 4 3 8 9 10 11 這個序列,在中樞元素5和3交換就會把元素3的穩定性打亂 實現原理 快排主要是通過選擇乙個關鍵值作為基準值。比基準值小的都...

快排 歸併 堆排

快排 include include include includeusing namespace std void quicksort vector a,int l,int r 終止遞迴的條件,子串行長度為1 int mid low high low 2 取得序列中間的元素 mergesort a...