MySQL索引查詢limit?offset及排序order?by用法
引言
“ 這是MySQL系列筆記的第九篇,文章內(nèi)容均為本人通過實(shí)踐及查閱資料相關(guān)整理所得,可用作新手入門指南,或者個(gè)人知識(shí)點(diǎn)查閱。”
select 語句獲取數(shù)據(jù)我們可以通過 where 語句來限制條件。
但是如果限制條件之后還是很多數(shù)據(jù),比如說 一萬條,但有時(shí)候我們只是想看看數(shù)據(jù)的基本情況,不需要一萬條數(shù)據(jù),看不完,而且這一萬條數(shù)據(jù)返回到客戶端的時(shí)間也很長(zhǎng),沒必要,那么這就需要我們使用 limit 和 offset 來限制返回的數(shù)量。
使用 limit 和 offset 來限制返回的數(shù)量
1、limit
limit 限制數(shù)量,后面跟一個(gè)整數(shù) n,表示只返回符合條件的 n 條數(shù)據(jù)
比如說返回 book 表的前 5 條數(shù)據(jù):
select?*?from?book?limit?5;
2、offset
offset 是偏移量,和 limit 連用,比如說 limit 3 offset 5
表示舍棄前5條數(shù)據(jù), 然后返回之后的 3條數(shù)據(jù)
可以理解成分頁的用法,比如說每頁數(shù)量為 10 條,然后我們分別獲區(qū)第1、2、3、4頁的數(shù)據(jù):
select?*?from?book?limit?10?offset?0; select?*?from?book?limit?10?offset?10; select?*?from?book?limit?10?offset?20; select?*?from?book?limit?10?offset?30;
注意: limit 和 offset 語句都放在查詢語句的最后面。
MySQL 查詢語句排序的關(guān)鍵字是 order by。
order by 的如下幾個(gè)用法
order by 的正序、逆序
多個(gè)字段排序
按照中文排序
1、order by 的升序、倒序
order by 的語法是 order by field_name asc/desc
,asc 是升序,desc 是倒序
比如根據(jù) book_name 字段按照升序排列返回:
select?*?from?book?order?by?book_name?asc;
其實(shí),asc 是 order by 的默認(rèn)排序方式,所以如果是升序,asc 是可以省略的。
select?*?from?book?order?by?book_name;
如果是倒序就是用 desc:
select?*?from?book?order?by?book_name?desc;
2、多個(gè)字段排序
如果是多個(gè)字段分別倒序、升序,通過逗號(hào)分隔連用即可:
select?*?from?book?order?by?book_name?desc,?author?asc;
3、按照中文排序
現(xiàn)在插入幾條帶中文的數(shù)據(jù):
insert?into?book?(book_name,?author)?values('中文測(cè)試',?'作者1'),?('這是測(cè)試',?'作者2'),?('測(cè)試',?'作者3');
直接使用排序的邏輯會(huì)發(fā)現(xiàn)排序是不對(duì)的,因?yàn)?'測(cè)試' 的拼音是在 'ceshi',但是排序卻并沒有在其他兩條數(shù)據(jù)前面:
select?*?from?book?order?by?book_name;
那么這就需要用到另一個(gè)用法:
select?*?from?book?order?by?convert(book_name?using?gbk);
其語法是 convert(field_name using gbk)
,convert 函數(shù)里是字段名,然后 using gbk 表示轉(zhuǎn)化成 gbk 的格式來排序。
以上就是MySQL限制數(shù)據(jù)返回條數(shù)limit offset及排序order by用法的詳細(xì)內(nèi)容,更多關(guān)于MySQL limit offset order by的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
win10下mysql 8.0.12 安裝及環(huán)境變量配置教程
這篇文章主要為大家詳細(xì)介紹了MySQL8.0的安裝、配置、啟動(dòng)服務(wù)和登錄及配置環(huán)境變量,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03MYSQL造數(shù)據(jù)占用臨時(shí)表空間的解決方法
在MySQL中,臨時(shí)表空間并不是一個(gè)可以直接刪除的文件或目錄,因?yàn)榕R時(shí)表空間通常是由MySQL服務(wù)器在運(yùn)行時(shí)根據(jù)需要自動(dòng)創(chuàng)建和管理的,這篇文章主要介紹了MYSQL造數(shù)據(jù)占用臨時(shí)表空間,需要的朋友可以參考下2024-05-05Linux下mysql 8.0.15 安裝配置圖文教程以及修改密碼
這篇文章主要為大家詳細(xì)介紹了Linux下mysql 8.0.15安裝配置圖文教程以及修改密碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03MySQL數(shù)據(jù)庫實(shí)驗(yàn)實(shí)現(xiàn)簡(jiǎn)單數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì)
這篇文章主要介紹了MySQL數(shù)據(jù)庫實(shí)驗(yàn)實(shí)現(xiàn)簡(jiǎn)單數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì),文章通過理解并能運(yùn)用數(shù)據(jù)庫設(shè)計(jì)的常見步驟來設(shè)計(jì)滿足給定需求的概念模和關(guān)系數(shù)據(jù)模型展開詳情,需要的朋友可以參考一下2022-06-06MySQL show process命令監(jiān)控診斷數(shù)據(jù)庫性能詳解
這篇文章主要為大家介紹了MySQL show process命令監(jiān)控診斷數(shù)據(jù)庫性能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10