中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

MySQL怎么對數據進行排序

發布時間:2022-08-05 16:20:02 來源:億速云 閱讀:136 作者:iii 欄目:開發技術

這篇文章主要介紹“MySQL怎么對數據進行排序”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“MySQL怎么對數據進行排序”文章能幫助大家解決問題。

一、 排序的基本使用

  1. 在查詢數據時,如果沒有使用排序操作,默認情況下SQL會按元組添加的順序來排列查詢結果。

  2. 在SQL中,使用關鍵字 ORDER BY... 來進行排序操作。在此關鍵字后面可以添加關鍵字 ASC (ascend) 表示升序排列 (從小到大) ,DESC (descend) 表示降序排列 (從大到小) 。

  3. 如果在 ORDER BY... 關鍵字后沒有添加 ASC 或 DESC 來指明升序還是降序排列,SQL會默認按照升序 ASC 排列。如下代碼所示:

SELECT employee_id, last_name, salary
FROM employees
ORDER BY salary;

查詢結果:

MySQL怎么對數據進行排序

【例子1】查詢員工表 employees 中的員工的 employee_idlast_namesalarydepartment_id 信息。并按 salary 從大到小 (降序) 進行排列。

SELECT employee_id, last_name, salary
FROM employees
ORDER BY salary DESC;

查詢結果:

MySQL怎么對數據進行排序

二、 使用列的別名來排序

在SQL中,可以使用字段 (列) 的別名來進行排序。因為有時我們需要計算表中沒有的字段 (如年薪 annual_salary ) ,或者有些字段名字實在是太長了,使用簡短的別名可以提高我們編程的效率。如下例子所示:

【例子】查詢員工表 employees 中的員工的 employee_idlast_name 、月薪 salary 和 年薪 annual_salary 信息。并按 annual_salary 從大到小 (降序) 進行排列。

SELECT employee_id, last_name, salary, 
salary * (1 + IFNULL(commission_pct, 0) * 12) AS "annual_salary"
FROM employees
ORDER BY annual_salary DESC;

查詢結果:

MySQL怎么對數據進行排序

【注意】

  • 格式要求,WHERE 必須聲明在 FROM 后。

  • 列的別名只能在 ORDER BY... 中使用,不能在 WHERE 中使用。**如果在 WHERE 中使用列的別名,SQL會報錯。那為什么MySQL中列的別名不能在 WHERE 中使用呢?原因如下:

【原因】

SELECT employee_id, last_name, department_id
FROM employees
WHERE department_id IN(50, 60, 70)
ORDER BY department_id DESC;
  • 在SQL中,查詢語句不是按照上述代碼從第1行到第4行從上往下執行的。而是首先執行第2行 FROM... ,先去找要查詢的表。

  • 再執行第3行 WHERE... ,去篩選符合條件的元組。

  • 然后執行第1行 SELECT... ,顯示你要查詢的字段。在這一步才會生成列的別名,自然無法提供給上一步的 WHERE 來使用。但是可以提供給下一步的 ORDER BY 來使用。

  • 最后才是第4行 ORDER BY... ,按某列排序。這個時候可以使用列的別名來進行排序。

查詢結果:

MySQL怎么對數據進行排序

三、 二級排序

在現實生活中,我們有時候希望先按某個字段排序,再按另一個字段排序。在SQL中我們可以使用二級排序來實現。使用方法請看下面例子:

【例子1】查詢員工表 employees 中的員工的員工ID employee_id 、名字 last_name 、月薪 salary 和部門ID department_id 。并先按部門ID department_id 降序排列,再按 salary 從大到小 (降序) 進行排列。

SELECT employee_id, last_name, salary, department_id
FROM employees
ORDER BY department_id DESC, salary DESC;

查詢結果:

MySQL怎么對數據進行排序

依次類推,可以在 ORDER BY 后面加逗號,來實現三級、四級…排序。

關于“MySQL怎么對數據進行排序”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

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

AI

尖扎县| 东台市| 黑山县| 常山县| 东乡县| 澄迈县| 万荣县| 玉门市| 简阳市| 旌德县| 常山县| 麻江县| 青田县| 城口县| 铜川市| 诸暨市| 江安县| 和田县| 阿鲁科尔沁旗| 布尔津县| 建湖县| 鸡西市| 望江县| 湖北省| 桐城市| 平潭县| 无极县| 江孜县| 蓬安县| 岱山县| 唐海县| 延川县| 泸溪县| 金寨县| 航空| 陇川县| 连州市| 澄江县| 磐安县| 棋牌| 湖南省|