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

MySQL中Order By多字段排序規(guī)則代碼示例

 更新時間:2017年10月12日 14:31:27   作者:xlxxcc  
這篇文章主要介紹了MySQL中Order By多字段排序規(guī)則代碼示例,小編覺得挺不錯的,這里給大家分享下,需要的朋友可以參考。

說在前面

突發(fā)奇想,想了解一下mysql order by排序是以什么規(guī)則進行的? 好了,話不多說,直接進入正題吧。

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進制字節(jié)碼 
select name, hex(name) from a order by name desc

結(jié)果如下:

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

很明顯,MySQL中的排序,是以字節(jié)碼進行排序的,當(dāng)?shù)谝粋€字相同的時候,比較第二個字的字節(jié)碼, 一次類推

MySql order by 多字段

有比較,才有想法,有比較才有進步,因此我們先把單字段的降序排序結(jié)果列出來,然后在看看兩個字段的降序排序氣礦,我們就可以從中分析出其中道理來。

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

左邊是order by name desc, 右邊是order by code desc的結(jié)果

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

結(jié)果很明顯:單一字段排序的時候,其他字段出現(xiàn)的順序是自然排序的。

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

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

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

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

經(jīng)測試發(fā)現(xiàn),select * from a order by code and name desc 排序效果依然無效。

我們在看看下面的語句

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

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

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

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

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

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

很明顯,在這個測試?yán)由蟻砜矗?order by concat(code, name) desc的效果等同于 order by code desc, name desc

總結(jié)

以上就是本文的全部內(nèi)容,希望對大家有所幫助。歡迎參閱:幾個比較重要的MySQL變量、MySQL主庫binlog(master-log)與從庫relay-log關(guān)系代碼詳解、MySQL prepare原理詳解等,有什么問題可以隨時留言,歡迎大家交流討論。

相關(guān)文章

  • mysql設(shè)置某字段不能重復(fù)問題

    mysql設(shè)置某字段不能重復(fù)問題

    這篇文章主要介紹了mysql設(shè)置某字段不能重復(fù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 如何用mysqldump進行全量和時間點備份

    如何用mysqldump進行全量和時間點備份

    這篇文章主要介紹了如何用mysqldump進行全量和時間點備份,幫助大家更好的管理MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-08-08
  • MySQL數(shù)據(jù)庫?JDBC?編程(Java?連接?MySQL)

    MySQL數(shù)據(jù)庫?JDBC?編程(Java?連接?MySQL)

    這篇文章主要介紹了MySQL數(shù)據(jù)庫?JDBC?編程Java?連接?MySQL,在?Java?中,這樣的封裝就是由?Java?標(biāo)準(zhǔn)庫來完成的,封裝出了一套統(tǒng)一的數(shù)據(jù)庫?API?稱為?JDBC,下面來看文章的詳細介紹吧
    2021-12-12
  • Mysql錯誤Every derived table must have its own alias解決方法

    Mysql錯誤Every derived table must have its own alias解決方法

    這篇文章主要介紹了Mysql錯誤Every derived table must have its own alias解決方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • MySQL快速對比數(shù)據(jù)技巧

    MySQL快速對比數(shù)據(jù)技巧

    這篇文章主要介紹了MySQL快速對比數(shù)據(jù)的方法以及技巧分享,如果對此有興趣,一起跟著小編學(xué)習(xí)下吧。
    2018-02-02
  • MySQL之復(fù)雜查詢的實現(xiàn)

    MySQL之復(fù)雜查詢的實現(xiàn)

    本文主要介紹了MySQL之復(fù)雜查詢的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 關(guān)于mysql 8.x 中insert ignore的性能問題

    關(guān)于mysql 8.x 中insert ignore的性能問題

    這篇文章主要介紹了關(guān)于mysql 8.x 中insert ignore的性能問題,具有很好的參考價值,希望對大家有所幫助。
    2022-08-08
  • MySQL中字段名和保留字沖突的解決辦法

    MySQL中字段名和保留字沖突的解決辦法

    這篇文章主要介紹了MySQL中字段名和保留字沖突的解決辦法,其實只需要用撇號把字段名括起來就可以了,這樣在select、insert、update、delete語句中都不會有問題,需要的朋友可以參考下
    2014-06-06
  • mysql error 1071: 創(chuàng)建唯一索引時字段長度限制的問題

    mysql error 1071: 創(chuàng)建唯一索引時字段長度限制的問題

    這篇文章主要介紹了mysql error 1071: 創(chuàng)建唯一索引時字段長度限制的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • MySQL Server 8.0.13.0 安裝教程圖文詳解

    MySQL Server 8.0.13.0 安裝教程圖文詳解

    本文通過圖文并茂的形式給大家介紹了MySQL Server 8.0.13.0 安裝教程 ,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04

最新評論