日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL排序ORDER BY与分页LIMIT,SQL,减少数据表的网络传输量,完整详细可收藏

發布時間:2023/12/2 数据库 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL排序ORDER BY与分页LIMIT,SQL,减少数据表的网络传输量,完整详细可收藏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 1、ORDER BY排序
    • 2、LIMIT分頁


1、ORDER BY排序

1.1 排序規則
使用 ORDER BY 子句排序
ASC(ascend): 升序
DESC(descend):降序
ORDER BY 子句在SELECT語句的結尾。

1.2 單列排序

SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_date ; #默認升序 SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_date DESC ; #指定降序

1.3 多列排序

SELECT last_name, department_id, salary FROM employees ORDER BY department_id, salary DESC; #按照部門id升序,工資降序

可以使用不在SELECT列表中的列排序。
在對多列進行排序的時候,首先排序的第一列必須有相同的列值,才會對第二列進行排序。如果第一列數據中所有值都是唯一的,將不再對第二列進行排序。


2、LIMIT分頁

2.1 背景
背景1:查詢返回的記錄太多了,查看起來很不方便,要實現分頁查詢。
背景2:表里有 4 條數據,我們只想要顯示第 2、3 條數據。

2.2 實現規則
分頁原理:所謂分頁顯示,就是將數據庫中的結果集,一段一段顯示出來需要的條件。MySQL中使用 LIMIT 實現分頁
格式:

LIMIT [位置偏移量,] 行數

第一個“位置偏移量”參數指示MySQL從哪一行開始顯示,是一個可選參數,如果不指定“位置偏移量”,將會從表中的第一條記錄開始(第一條記錄的位置偏移量是0,第二條記錄的位置偏移量是1,以此類推);第二個參數“行數”指示返回的記錄條數。

--前10條記錄: SELECT * FROM 表名 LIMIT 0,10; 或者 SELECT * FROM 表名 LIMIT 10; --第11至20條記錄: SELECT * FROM 表名 LIMIT 10,10; --第21至30條記錄: SELECT * FROM 表名 LIMIT 20,10;

MySQL 8.0中可以使用“LIMIT 3 OFFSET 4;”,意思是獲取從第5條記錄開始后面的3條記錄,和“LIMIT4,3;”返回的結果相同。

分頁顯式公式:(當前頁數-1)*每頁條數,每頁條數

SELECT * FROM table LIMIT(PageNo - 1)*PageSize,PageSize;

注意:LIMIT 子句必須放在整個SELECT語句的最后!

使用 LIMIT 的好處:約束返回結果的數量可以減少數據表的網絡傳輸量 ,也可以 提升查詢效率 。如果我們知道返回結果只有1條,就可以使用 LIMIT 1 ,告訴 SELECT 語句只需要返回一條記錄即可。這樣的好處就是 SELECT 不需要掃描完整的表,只需要檢索到一條符合條件的記錄即可返回。

總結

以上是生活随笔為你收集整理的MySQL排序ORDER BY与分页LIMIT,SQL,减少数据表的网络传输量,完整详细可收藏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。