首頁  >  文章  >  資料庫  >  解析MySQL依常規排序、自訂排序和按中文拼音字母排序的方法

解析MySQL依常規排序、自訂排序和按中文拼音字母排序的方法

怪我咯
怪我咯原創
2017-04-30 10:23:021394瀏覽

MySQL常規排序、自訂排序和按中文拼音字母排序,在實際的SQL編寫時,我們有時需要對條件集合進行排序。以下給出3種比較常用的排序方式,一起看看吧

MySQL常規排序、自訂排序和按中文拼音字母排序,在實際的SQL編寫時,我們有時候需要對條件集合進行排序。

下面給出3種比較常用的排序方式,mark一下

1.常規排序ASC DESC

ASC 正序

DESC倒敘

-- 此處不用多講排序

自訂排序是根據自己想要的特定字串(數字)順序進行排序。

主要是使用函數FIELD(str,str1,str2,str3,...)

MySQL的自訂排序,str與str1、str2、str3...進行比較,並依照str1,str2,str3.. .的順序輸出,如果遇到str為null或不存在str1,str2,str3...中的情況的則序列為0,

eg:

SELECT * FROM TEST ORDER BY FIELD(value,'test1','test2','test3','test4') ASC/DESC

eg2:

SELECT * FROM TEST WHERE VALUE IN('test1','test2','test3','test4') ORDER BY FIELD(value,'test1','test2','test3','test4') ASC/DESC -- 保证只满足条件的进行排序

eg2:

SELECT * FROM TEST ORDER BY CONVERT(value USING GBK) ASC/DESC

eg2:

3.按中文拼音字母排序

如果表字段使用的GBK編碼的話,我們可以直接order by value ,因為GBK本身就是按照拼音字母排序ABCDEFGHIGK...,當第一位相同的時候會比較第二位,以此類推。 如果表格欄位使用的UTF-8編碼的話,通常我們都會的編碼,這樣我們可以使用MySQL的convert方法來開啟轉換gbk進行排序。

eg:🎜🎜🎜rrreee

以上是解析MySQL依常規排序、自訂排序和按中文拼音字母排序的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn