想了解一下mysql order by排序是以什麼規則進行的? 本文主要介紹了MySQL中Order By多字段排序規則代碼範例,小編覺得挺不錯的,這裡給大家分享下,需要的朋友可以參考,希望能幫助到大家。
MySql order by 單一欄位
建立測試表如下:
##
CREATE TABLE `a` ( `code` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT into a values('中一', '我'); INSERT into a values('中二', '你'); INSERT into a values('高一', '我是'); INSERT into a values('高二', '我们'); INSERT into a values('高二', '我的');測試語句如下:
#
-- hex(): 获取16进制字节码 select name, hex(name) from a order by name desc結果如下:
hex(name) | |
E68891E79A84 | |
E68891E698AF | |
E68891E4BBAC | |
#E68891 | |
E4BDA0 |
#MySql order by 多字段
-- 按照name进行降序排序 select * from a order by name desc; -- 按照code进行降序排序 select * from a order by code desc;左邊是order by name desc, 右邊是order by code desc的結果
name | |
我的 | |
#我是 | |
我們 | |
你 |
name | |
高二 | |
高二 | |
高一 | |
中二 | |
#下面我們來看看多字段的排序
中一 | |
#中二 | |
#高一 | |
高二 | |
高二 |
我們在看下面的語句
##code | name |
高二 | 我的 |
#我們 | |
我是 |
你
另外我們還可以使用contat函數把多個欄位拼接起來,在進行排序。但是要保證欄位不能為null。下面我們來看看concat的sql語句和結果。 | |
code | |
##高二 | |
#高一##我是
###你############中一######我############ ###很明顯,在這個測試範例上來看, order by concat(code, name) desc的效果等同於order by code desc, name desc###### 相關推薦:######### #MySQL Order by 語句優化程式碼詳解############mysql中order by in 的字元順序(推薦)############MySQL Order By用法分享## ####以上是詳解MySQL中Order By多字段排序規則的詳細內容。更多資訊請關注PHP中文網其他相關文章!