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

溫馨提示×

溫馨提示×

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

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

mysql排序與分頁的方法是什么

發布時間:2022-11-02 10:55:29 來源:億速云 閱讀:129 作者:iii 欄目:MySQL數據庫

今天小編給大家分享一下mysql排序與分頁的方法是什么的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

  • 排序規則

ASC(ascend): 升序
DESC(descend):降序
ORDER BY 子句在SELECT語句的結尾
  • 代碼案例

# 按照salary從高到低的順序顯示員工信息
SELECT employee_id, last_name, salary
FROM employees
ORDER BY salary DESC;

# 按照salary從低到高的順序顯示員工信息
SELECT employee_id, last_name, salary
FROM employees
ORDER BY salary ASC;

# 如果在ORDER BY 后沒有顯式指名排序的方式的話,則默認按照升序排列
SELECT employee_id, last_name, salary
FROM employees
ORDER BY salary; 

# 使用列的別名,進行排序
SELECT employee_id, salary, salary * 12 annual_sal
FROM employees
ORDER BY annual_sal;

# 錯誤案例:
# 列的別名只能在 ORDER BY 中使用,不能在WHERE中使用。如下方式會報錯
SELECT employee_id, salary, salary * 12 annual_sal
FROM employees
WHERE annual_sal > 81600;

# WHERE 需要聲明在FROM后,ORDER BY之前
SELECT employee_id, salary
FROM employees
WHERE department_id IN (50,60,70)
ORDER BY department_id DESC;

# 二級排序:顯示員工信息,按照department_id的降序排列,salary的升序排列
SELECT employee_id, salary, department_id
FROM employees
ORDER BY department_id DESC, salary ASC;
  • 分頁規則

# 顯示第幾條到第幾條
LIMIT [位置偏移量,] 行數

# 顯示第幾頁的所有
分頁顯式公式:(當前頁數-1)*每頁條數,每頁條數
  • 代碼案例

# 每頁顯示20條記錄,此時顯示第1頁
SELECT employee_id, last_name
FROM employees
LIMIT 0, 20;

# 每頁顯示20條記錄,此時顯示第2頁
SELECT employee_id, last_name
FROM employees
LIMIT 20, 20;

# 每頁顯示20條記錄,此時顯示第3頁
SELECT employee_id, last_name
FROM employees
LIMIT 40, 20;

# 每頁顯示pageSize條記錄,此時顯示第pageNo頁:
# 公式:LIMIT (pageNo-1) * pageSize,pageSize;

# LIMIT的格式: 嚴格來說:LIMIT 位置偏移量,條目數

# 結構"LIMIT 0,條目數" 等價于 "LIMIT 條目數"
SELECT employee_id, last_name, salary
FROM employees
WHERE salary > 6000
ORDER BY salary DESC
#limit 0, 10;    # 寫法1
LIMIT 10;

# 表里有107條數據,我們只想要顯示第 32、33 條數據
SELECT employee_id, last_name
FROM employees
LIMIT 31, 2;

# MySQL8.0新特性:LIMIT ... OFFSET ...

# 表里有107條數據,我們只想要顯示第 32、33 條數據
SELECT employee_id, last_name
FROM employees
LIMIT 2 OFFSET 31;

# 查詢員工表中工資最高的員工信息
SELECT employee_id, last_name, salary
FROM employees
ORDER BY salary DESC
#limit 0, 1
LIMIT 1;

課后練習

# 查詢員工的姓名和部門號和年薪,按年薪降序,按姓名升序顯示 
SELECT last_name, department_id, salary * 12 annual_salary
FROM employees
ORDER BY annual_salary DESC, last_name ASC;

# 選擇工資不在 8000 到 17000 的員工的姓名和工資,按工資降序,顯示第21到40位置的數據 
SELECT last_name, salary
FROM employees
WHERE salary NOT BETWEEN 8000 AND 17000
ORDER BY salary DESC
LIMIT 20, 20;

# 查詢郵箱中包含 e 的員工信息,并先按郵箱的字節數降序,再按部門號升序
SELECT employee_id, last_name, email, department_id
FROM employees
#where email like '%e%'    # 寫法1
WHERE email REGEXP '[e]'
ORDER BY LENGTH(email) DESC,department_id;

以上就是“mysql排序與分頁的方法是什么”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

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

AI

宜兰市| 兰坪| 吕梁市| 崇阳县| 若尔盖县| 贵港市| 绥中县| 绩溪县| 东港市| 寿阳县| 博客| 余庆县| 沁水县| 襄樊市| 榆社县| 六盘水市| 长子县| 赤城县| 乳山市| 宜良县| 民和| 石城县| 宜都市| 新丰县| 全州县| 中山市| 含山县| 扬中市| 灌云县| 霸州市| 鞍山市| 体育| 马尔康县| 浦县| 榆社县| 峨山| 九龙坡区| 漠河县| 丰台区| 宣恩县| 库尔勒市|