91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL中Order By多字段排序規則的示例分析

發布時間:2021-07-28 14:53:30 來源:億速云 閱讀:1001 作者:小新 欄目:MySQL數據庫

小編給大家分享一下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

結果如下:

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

codename
高二我的
高一我是
高二我們
中一
中二
codename
高二我們
高二我的
高一我是
中二
中一

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

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

-- 按照code, name進行降序排序 
select * from a order by code, name desc;
codename
中一
中二
高一我是
高二我的
高二我們

結果如下:首先謝謝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;
codename
高二我的
高二我們
高一我是
中二
中一

對比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
codename
高二我的
高二我們
高一我是
中二
中一

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

以上是“MySQL中Order By多字段排序規則的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

子长县| 封丘县| 中方县| 金堂县| 黄冈市| 张掖市| 通山县| 肇州县| 铜川市| 二连浩特市| 岳西县| 怀化市| 乌鲁木齐市| 南昌县| 伊金霍洛旗| 海南省| 宜春市| 驻马店市| 江永县| 东乡| 白河县| 朔州市| 手机| 大同市| 吉林市| 文化| 蒙自县| 衡东县| 武川县| 新竹市| 汤阴县| 黑龙江省| 商南县| 肇源县| 波密县| 嵊州市| 望都县| 项城市| 偏关县| 阜阳市| 横峰县|