SQL初認(rèn)識(shí)——12:排序

排序

我們使用SELECT查詢時(shí),細(xì)心的讀者可能注意到,查詢結(jié)果集通常是按照id排序的,也就是根據(jù)主鍵排序。這也是大部分?jǐn)?shù)據(jù)庫的做法。如果我們要根據(jù)其他條件排序怎么辦?可以加上ORDER BY子句。例如按照成績從低到高進(jìn)行排序:

-- 按score從低到高

SELECT id, name, gender, score FROM students ORDER BY score;

Run

如果要反過來,按照成績從高到底排序,我們可以加上DESC表示“倒序”:

-- 按score從高到低

SELECT id, name, gender, score FROM students ORDER BY score DESC;

Run

如果score列有相同的數(shù)據(jù),要進(jìn)一步排序,可以繼續(xù)添加列名。例如,使用ORDER BY score DESC, gender表示先按score列倒序,如果有相同分?jǐn)?shù)的,再按gender列排序:

-- 按score, gender排序:

SELECT id, name, gender, score FROM students ORDER BY score DESC, gender;

Run

默認(rèn)的排序規(guī)則是ASC:“升序”,即從小到大。ASC可以省略,即ORDER BY score ASC和ORDER BY score效果一樣。

如果有WHERE子句,那么ORDER BY子句要放到WHERE子句后面。例如,查詢一班的學(xué)生成績,并按照倒序排序:

-- 帶WHERE條件的ORDER BY:

SELECT id, name, gender, score

FROM students

WHERE class_id = 1

ORDER BY score DESC;

Run

這樣,結(jié)果集僅包含符合WHERE條件的記錄,并按照ORDER BY的設(shè)定排序。

小結(jié)

使用ORDER BY可以對(duì)結(jié)果集進(jìn)行排序;

可以對(duì)多列進(jìn)行升序、倒序排序。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.數(shù)據(jù)庫簡介 人類在進(jìn)化的過程中,創(chuàng)造了數(shù)字、文字、符號(hào)等來進(jìn)行數(shù)據(jù)的記錄,但是承受著認(rèn)知能力和創(chuàng)造能力的提升,...
    大熊_7d48閱讀 608評(píng)論 0 1
  • -- 基本查詢 -- 查詢所有字段 -- select * from 表名; select * from stud...
    pure璞嶸閱讀 2,099評(píng)論 0 2
  • 查詢數(shù)據(jù) 基本查詢 SELECT * FROM <表名> :查詢一個(gè)表的所有數(shù)據(jù) SELECT * FROM <...
    凌星月月閱讀 535評(píng)論 0 0
  • 50個(gè)常用的sql語句Student(S#,Sname,Sage,Ssex) 學(xué)生表Course(C#,Cname...
    哈哈海閱讀 1,339評(píng)論 0 7
  • 目錄 一、查詢準(zhǔn)備 二、條件查詢 三、排序 四、聚合函數(shù) 五、分組 六、分頁 七、連接查詢 八、自關(guān)聯(lián) 九、子查詢...
    夢(mèng)里才是真閱讀 653評(píng)論 0 3

友情鏈接更多精彩內(nèi)容