麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > MySQL > 正文

MySQL中Order By多字段排序規則代碼示例

2024-07-24 13:14:40
字體:
來源:轉載
供稿:網友

說在前面

突發奇想,想了解一下mysql/15581.html">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

結果如下:

 

name hex(name)
我的 E68891E79A84
我是 E68891E698AF
我們 E68891E4BBAC
E68891
E4BDA0

 

很明顯,MySQL中的排序,是以字節碼進行排序的,當第一個字相同的時候,比較第二個字的字節碼, 一次類推

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的結果

 

code name
高二 我的
高一 我是
高二 我們
中一
中二
code name
高二 我們
高二 我的
高一 我是
中二
中一

 

結果很明顯:單一字段排序的時候,其他字段出現的順序是自然排序的。

下面我們看看多字段的排序

-- 按照code, name進行降序排序 select * from a order by code, name desc; 

 

code name
中一
中二
高一 我是
高二 我的
高二 我們

 

結果如下:首先謝謝qq_27837327和MjayTang 的,本人在這里一次測試, 原文說這個sql排序無效的說法是錯誤的。實際上說order by code,name desc等同于order by code asc, name desc

經測試發現,select * from a order by code and name desc 排序效果依然無效。

我們在看看下面的語句

-- 按照code, name進行降序排序 select * from a order by code desc, name desc; -- 該語句的效果等同于下面的語句, 其中1、2分別對應的是code、name select code, name from a order by 1 desc, 2 desc; 

 

code name
高二 我的
高二 我們
高一 我是
中二
中一

 

對比code,name的單個字段降序排序,我們可以發現, 使用 order by code desc, name desc的時候,MySQL會先以code進行降序排序,在code進行降序排序該基礎上,再使用name進行降序排序。

另外我們還可以使用contat函數把多個字段拼接起來,在進行排序。但是要保證字段不能為null。下面我們來看一下concat的sql語句和結果。

select * from a order by concat(code,name) desc 

 

code name
高二 我的
高二 我們
高一 我是
中二
中一

 

很明顯,在這個測試例子上來看, order by concat(code, name) desc的效果等同于 order by code desc, name desc

總結

以上就是本文的全部內容,希望對大家有所幫助。有什么問題可以隨時留言,歡迎大家交流討論。


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中国字幕av | 日韩视频在线不卡 | 日韩激情在线视频 | 久久久成人精品视频 | 中文字幕免费一区 | 孕妇体内谢精满日本电影 | 热久久91| 国产一级毛片高清 | 斗破苍穹在线观看免费完整观看 | 18欧美性xxxx极品hd | 男女生羞羞视频网站在线观看 | 久草成人在线 | 欧美精品a∨在线观看不卡 午夜精品影院 | 青青草最新网址 | 欧日韩 | 免费国产精品视频 | 亚洲欧美国产高清 | 日韩黄色免费电影 | 国产成人综合在线 | 久久久久久久免费看 | 国产精品av久久久久久无 | 天海翼无删减av三级在线观看 | 成人免费一区二区 | 精品亚洲午夜久久久久91 | 999精品国产 | 久久久毛片视频 | 99这里有精品 | 亚洲情在线 | 欧美hdfree性xxxx | 草妞视频| 色网站综合 | 一边吃奶一边摸下娇喘 | 欧美一级免费在线观看 | 国产亚洲精品成人 | 国产一级免费片 | 黄色免费高清网站 | 欧美日韩亚洲在线 | 久久久久亚洲国产精品 | 国产精品成人av片免费看最爱 | 成人毛片在线免费看 | 久久91精品|