欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于PostgreSQL截取某個(gè)字段中的部分內(nèi)容進(jìn)行排序的問(wèn)題

 更新時(shí)間:2023年06月28日 11:46:28   作者:知識(shí)永遠(yuǎn)不會(huì)背叛你  
這篇文章主要介紹了PostgreSQL截取某個(gè)字段中的部分內(nèi)容進(jìn)行排序,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一.最基本的order by排序

本文使用的測(cè)試數(shù)據(jù)庫(kù)信息如下:

1.單列排序案例:查詢(xún)student表中所有數(shù)據(jù)并且按照成績(jī)從大到小排序

SELECT * FROM student order by score desc

2.多列排序案例:查詢(xún)student表中所有數(shù)據(jù)并且先按照成績(jī)從大到小排序,如果成績(jī)相同,再按照 id 從大到小排序

兩種寫(xiě)法均可:

SELECT * FROM "student" order by (score,id) desc
SELECT * FROM "student" order by score desc,id desc

錯(cuò)誤寫(xiě)法:

SELECT * FROM "student" order by score,id desc

上述寫(xiě)法的意思是:先按照成績(jī)從小到大排序,如果成績(jī)相同,再按照id從大到小排序

二.步入正題

開(kāi)發(fā)過(guò)程中遇到一個(gè)案例,例如上面student表中的學(xué)號(hào)字段(stu_number),學(xué)號(hào)前三位和后面三位都是相同的,現(xiàn)在需要按照stu_number的中間三位進(jìn)行從大到小排序,使用了substr()函數(shù)。

SELECT substr(stu_number,4,3),* FROM "student" order by substr(stu_number,4,3) desc

效果如下:

PostgreSQL中substr()函數(shù)的用法介紹:

1.從str內(nèi)容的第2個(gè)字符開(kāi)始截取,直到結(jié)束——substr(str,pos)

substr('HelloWord',2)

2.從str內(nèi)容的第2個(gè)字符開(kāi)始截取,截取長(zhǎng)度為3的字符串——substr(str,pos,len)

substr('HelloWord',2,3)

substr()函數(shù)的第一個(gè)參數(shù)可以為固定的字符串內(nèi)容,如上面的'HelloWord',也可以直接用數(shù)據(jù)庫(kù)表中的某個(gè)字段,如上面案例中填寫(xiě)的stu_number字段,但是填寫(xiě)的字段必須為字符串類(lèi)型

Java中substring()方法和PostgreSQL中substr()函數(shù)都是用來(lái)截取字符串的,但是用法上有些許區(qū)別:

1.Java中substring()方法的索引是從0開(kāi)始的,而PostgreSQL中substr()函數(shù)的索引是從1開(kāi)始的,例如:

//Java
String str = "HelloWord";
String substr = str.substring(2);
//PostgreSQL
substr('HelloWord',2)

上面的Java代碼的意思是從第三個(gè)字符開(kāi)始截取,直到結(jié)束,而PostgreSQL代碼的意思是從第二個(gè)字符開(kāi)始截取,直到結(jié)束。

2.參數(shù)含義不同

Java中substring(int beginIndex, int endIndex)表示從第beginIndex+1個(gè)字符開(kāi)始截取,直到第endIndex個(gè)字符,例如:

String str = "HelloWord";
String substr = str.substring(2,6);

上面的Java代碼的意思是從第三個(gè)字符開(kāi)始截取,直到第六個(gè)字符,即截取的內(nèi)容為:lloW

PostgreSQL中substr(str, pos, len)函數(shù)表示從第pos個(gè)字符開(kāi)始截取,截取長(zhǎng)度為len的字符串,例如:

substr('HelloWord',2, 6)

上面的代碼的意思是從第二個(gè)字符開(kāi)始截取,截取長(zhǎng)度為6的字符串,即截取的內(nèi)容為:elloWo

到此這篇關(guān)于PostgreSQL截取某個(gè)字段中的部分內(nèi)容進(jìn)行排序的文章就介紹到這了,更多相關(guān)PostgreSQL排序內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論