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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL 限制查询结果的记录数

發(fā)布時(shí)間:2025/3/12 数据库 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL 限制查询结果的记录数 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

使用 MySQL SELECT 語句時(shí)往往返回的是所有匹配的行,有些時(shí)候我們僅需要返回第一行或者前幾行,這時(shí)候就需要用到 MySQL LIMT 子句。

基本的語法格式如下:

<LIMIT> [<位置偏移量>,] <行數(shù)>

LIMIT 接受一個(gè)或兩個(gè)數(shù)字參數(shù)。參數(shù)必須是一個(gè)整數(shù)常量。如果給定兩個(gè)參數(shù),第一個(gè)參數(shù)指定第一個(gè)返回記錄行的偏移量,第二個(gè)參數(shù)指定返回記錄行的最大數(shù)目。

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

顯示 tb_students_info 表查詢結(jié)果的前 4 行,輸入的 SQL 語句和執(zhí)行結(jié)果如下所示。

mysql> SELECT * FROM tb_students_info LIMIT 4; +----+-------+---------+------+------+--------+------------+ | id | name | dept_id | age | sex | height | login_date | +----+-------+---------+------+------+--------+------------+ | 1 | Dany | 1 | 25 | F | 160 | 2015-09-10 | | 2 | Green | 3 | 23 | F | 158 | 2016-10-22 | | 3 | Henry | 2 | 23 | M | 185 | 2015-05-31 | | 4 | Jane | 1 | 22 | F | 162 | 2016-12-20 | +----+-------+---------+------+------+--------+------------+ 4 rows in set (0.00 sec)

由結(jié)果可以看到,該語句沒有指定返回記錄的“位置偏移量”參數(shù),顯示結(jié)果從第一行開始,“行數(shù)”參數(shù)為 4,因此返回的結(jié)果為表中的前 4 行記錄。

若指定返回記錄的開始位置,則返回結(jié)果為從“位置偏移量”參數(shù)開始的指定行數(shù),“行數(shù)”參數(shù)指定返回的記錄條數(shù)。

在 tb_students_info 表中,使用 LIMIT 子句返回從第 4 條記錄開始的行數(shù)為 5 的記錄,輸入的 SQL 語句和執(zhí)行結(jié)果如下所示。

mysql> SELECT * FROM tb_students_info LIMIT 3,5; +----+-------+---------+------+------+--------+------------+ | id | name | dept_id | age | sex | height | login_date | +----+-------+---------+------+------+--------+------------+ | 4 | Jane | 1 | 22 | F | 162 | 2016-12-20 | | 5 | Jim | 1 | 24 | M | 175 | 2016-01-15 | | 6 | John | 2 | 21 | M | 172 | 2015-11-11 | | 7 | Lily | 6 | 22 | F | 165 | 2016-02-26 | | 8 | Susan | 4 | 23 | F | 170 | 2015-10-01 | +----+-------+---------+------+------+--------+------------+ 5 rows in set (0.00 sec)

由結(jié)果可以看到,該語句指示 MySQL 返回從第 4 條記錄行開始的之后的 5 條記錄,第一個(gè)數(shù)字“3”表示從第 4 行開始(位置偏移量從 0 開始,第 4 行的位置偏移量為 3),第二個(gè)數(shù)字 5 表示返回的行數(shù)。

所以,帶一個(gè)參數(shù)的 LIMIT 指定從查詢結(jié)果的首行開始,唯一的參數(shù)表示返回的行數(shù),即“LIMIT n”與“LIMIT 0,n”等價(jià)。帶兩個(gè)參數(shù)的 LIMIT 可返回從任何位置開始的指定行數(shù)的數(shù)據(jù)。

返回第一行時(shí),位置偏移量是 0。因此,“LIMIT 1,1”返回第 2 行,而不是第 1 行。

注意:MySQL 5.7 中可以使用“LIMIT 4 OFFSET 3”,意思是獲取從第5條記錄開始的后面的3條記錄,和“LIMIT 4,3”返回的結(jié)果相同。

總結(jié)

以上是生活随笔為你收集整理的MySQL 限制查询结果的记录数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。