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

mysql按照自定義(指定順序)排序的方法實(shí)例

 更新時(shí)間:2022年06月01日 09:40:23   作者:Quader  
在我們寫(xiě)業(yè)務(wù)代碼的時(shí)候,會(huì)經(jīng)常碰見(jiàn)排序方式既不是正序也不是倒序,下面這篇文章主要給大家介紹了關(guān)于mysql按照自定義(指定順序)排序的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、mysql中實(shí)現(xiàn)指定排序需求

一般情況下,我們排序都是直接利用 order by 字段 asc/desc;但是如果要排序的字段數(shù)據(jù)格式并不能直接實(shí)現(xiàn),或者說(shuō)我們需要指定的順序且沒(méi)有什么規(guī)律,簡(jiǎn)單的order by字段就實(shí)現(xiàn)不了;

如下圖中表;

我們需要按照中國(guó)銀行,建設(shè)銀行,工商銀行順序排序;直接使用order by 字段并不能得到我們想要的順序

同樣,對(duì)于類(lèi)型我們想要按正回購(gòu),買(mǎi)入,賣(mài)出這樣的順序去排序,簡(jiǎn)單的order by 字段也不能實(shí)現(xiàn);

二、解決方案

1:自定義排序?qū)崿F(xiàn)

01. case when 轉(zhuǎn)換實(shí)現(xiàn)自定義排序;

使用case when 將字段中的中國(guó)銀行,建設(shè)銀行,工商銀行,轉(zhuǎn)換為1,2,3,這樣在我們?cè)偈褂胦rder by實(shí)現(xiàn)數(shù)據(jù)的自定義重排。

02:mysql排序函數(shù)filed 實(shí)現(xiàn)自定義排序(推薦);

MySQL中的field()函數(shù),可以用來(lái)對(duì)SQL中查詢(xún)結(jié)果集進(jìn)行指定順序排序。

field(str,str1,str2,str3…)字段str按照字符串str1,str2,str3…的順序返回查詢(xún)到的結(jié)果集。如果表中str字段值不存在于str1,str2,str3中的記錄,放在結(jié)果集最前面返回。

03:函數(shù)locate 實(shí)現(xiàn)自定義排序;

還可以利用locate函數(shù)來(lái)實(shí)現(xiàn)排序;

locate(subStr,string) :判斷字符串(string)中是否包含另一個(gè)字符串(subStr),函數(shù)返回的是subStr在string中出現(xiàn)的位置;

04:函數(shù)lnstr 實(shí)現(xiàn)自定義排序;

INSTR(STR,SUBSTR) 在一個(gè)字符串(STR)中搜索指定的字符(SUBSTR),返回發(fā)現(xiàn)指定的字符的位置(INDEX);

同locate函數(shù)大致一樣,不過(guò)函數(shù)內(nèi)參數(shù)一個(gè)在前,一個(gè)在后;

05:利用數(shù)據(jù)字典實(shí)現(xiàn)自定義排序;

對(duì)于部分相對(duì)比較固定的字段,一般可以建立數(shù)據(jù)字典項(xiàng)來(lái),不僅方便返回給前端做下拉等,也方便后期添加和修改的維護(hù),也可以在數(shù)據(jù)字典中給與對(duì)應(yīng)的順序;主要可以方便后期調(diào)整和維護(hù);只需要修改數(shù)據(jù)字典中的排序即可;

首先,需要在數(shù)據(jù)字典表中建立相應(yīng)的數(shù)據(jù)字典項(xiàng)并維護(hù)順序;

其次,存儲(chǔ)時(shí)直接存儲(chǔ)對(duì)應(yīng)的數(shù)據(jù)字典值就可以了,然后關(guān)聯(lián)查詢(xún),利用數(shù)據(jù)字典順序排序;即可;

如果順序有變,或者要添加新的類(lèi)型,也只需要在數(shù)據(jù)字典中維護(hù)即可,不需要修改sql,擴(kuò)展性較好(有需要甚至可以給與數(shù)據(jù)字典的配置頁(yè)面專(zhuān)門(mén)維護(hù));

總結(jié)

到此這篇關(guān)于mysql按照自定義(指定順序)排序的文章就介紹到這了,更多相關(guān)mysql按照自定義排序內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論