偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

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

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

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

查出的結(jié)果如下:

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

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

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

查詢的結(jié)果如下:

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

說(shuō)明:這里用到一個(gè)小技巧,就是把ID轉(zhuǎn)成字符串,然后在兩邊加上",",組合一個(gè)字符串,用逗號(hào)隔開(kāi)每個(gè)ID,然后查詢ID的下標(biāo)值(之所以兩邊加上","是因?yàn)椴樵兿聵?biāo)的時(shí)候類似ID=123和ID=1234會(huì)查到同一個(gè)下標(biāo),網(wǎng)上給出的類似答案幾乎都沒(méi)有注意到這一點(diǎn)?。。。H绻麑?duì)CHARINDEX這個(gè)方法不看不明的話可以看下以下這個(gè)查詢,估計(jì)就明白了。

  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 

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

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

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

【編輯推薦】

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

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-24 19:28:12

SQL CHARIND

2010-09-06 14:42:56

SQL函數(shù)

2010-10-08 13:21:03

JavaScript多維數(shù)組

2010-11-25 13:56:30

MySQL查詢結(jié)果

2023-06-09 09:32:52

DeepMindC++庫(kù)算法

2010-09-28 11:53:28

SQL查詢

2010-02-25 09:58:05

WCF配置指定Addr

2009-11-30 18:46:51

PHP字符串顛倒順序

2021-02-03 14:40:22

Python字典語(yǔ)言

2016-12-01 15:43:41

Linuxls命令

2016-09-07 13:26:25

R語(yǔ)言不平衡數(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集群容器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)