自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用CHARINDEX方法實現(xiàn)對字段按指定順序排序

數(shù)據(jù)庫 SQL Server
SqlServer的CHARINDEX方法可以實現(xiàn)對字段按照指定的順序排序,因此,在我們的日常應用中,我們可以靈活的利用CHARINDEX方法把查詢的結果按照我們想要的順序顯示。本文主要介紹了這一方法的使用,希望會對讀者有所幫助。

SqlServer有一個這樣的SQL查詢,select * from Product where ID in (12490,12494,12486)。在一個名為Project的表中對自增字段ID做in查詢,他希望查出來的記錄ID字段按照'12490','12494','12486'這個順序來排,但是很不幸的是查出來后的記錄是按照ID的進行正排序,這并不符合他的要求。

查出的結果如下:

用CHARINDEX方法實現(xiàn)對字段按指定順序排序

其實我們可以用SqlServer的CHARINDEX方法來完成這一實現(xiàn),代碼如下:

  1. select * from Product where ID in(12490,12494,12486)   
  2.  
  3. order by CHARINDEX(','+CONVERT(varchar(10),ID)+',',',12490,12494,12486,') 

查詢的結果如下:

用CHARINDEX方法實現(xiàn)對字段按指定順序排序

說明:這里用到一個小技巧,就是把ID轉(zhuǎn)成字符串,然后在兩邊加上",",組合一個字符串,用逗號隔開每個ID,然后查詢ID的下標值(之所以兩邊加上","是因為查詢下標的時候類似ID=123和ID=1234會查到同一個下標,網(wǎng)上給出的類似答案幾乎都沒有注意到這一點?。。。?。如果對CHARINDEX這個方法不看不明的話可以看下以下這個查詢,估計就明白了。

  1. select Product.*, CHARINDEX(','+CONVERT(varchar(10),ID)+',',',12490,12494,12486,') AsIdIndex   
  2.  
  3. from Product  
  4.  
  5. whereID in(12490,12494,12486)   
  6.  
  7. order byIdIndex 

查詢結果如下(請看第二個表,***個表用來做對比),這里也可以發(fā)現(xiàn)一個細節(jié),就是Index是從1開始的,而不是0。

用CHARINDEX方法實現(xiàn)對字段按指定順序排序

 本文就介紹到這里,如果您有更好的實現(xiàn)方法,歡迎您與我們分享,共同進步才是硬道理!

【編輯推薦】

  1. SQL如何批量修改和刪除存儲過程
  2. SQL數(shù)據(jù)庫將橫向數(shù)據(jù)轉(zhuǎn)換為縱向字段
  3. 巧用DAC解決SQL Server登錄失敗的問題
  4. 使用SQL Trace來實現(xiàn)SQL Server的跟蹤操作
  5. CTE和WITH AS短語結合使用提高SQL查詢性能
責任編輯:趙鵬 來源: 博客園
相關推薦

2021-09-02 22:52:16

ValueDictionary排序

2010-10-08 12:03:03

修改mysql字段

2010-09-10 16:02:13

SQLCHARINDEX函數(shù)

2019-09-05 09:54:01

Java產(chǎn)品經(jīng)理人生第一份工作

2009-09-15 16:44:44

Linq排序

2009-07-02 10:03:02

DataView排序

2010-09-06 14:42:56

SQL函數(shù)

2010-09-24 19:28:12

SQL CHARIND

2010-11-25 13:56:30

MySQL查詢結果

2010-10-08 13:21:03

JavaScript多維數(shù)組

2010-09-28 11:53:28

SQL查詢

2023-06-09 09:32:52

DeepMindC++庫算法

2009-11-30 18:46:51

PHP字符串顛倒順序

2016-12-01 15:43:41

Linuxls命令

2010-02-25 09:58:05

WCF配置指定Addr

2021-02-03 14:40:22

Python字典語言

2016-09-07 13:26:25

R語言不平衡數(shù)據(jù)

2023-11-03 07:29:51

QL優(yōu)化分組字段順序優(yōu)化

2022-03-10 12:03:33

Python算法代碼

2021-06-03 09:00:00

Kubernetes集群容器
點贊
收藏

51CTO技術棧公眾號