教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Java培訓(xùn)之DQL之limit方言

更新時(shí)間:2016年06月27日18時(shí)23分 來源:傳智播客java培訓(xùn)學(xué)院 瀏覽次數(shù):

limit屬于mysql的方言,用來限定查詢結(jié)果的起始行,以及總行數(shù)。例如:select * from emp limit 3,4,表示從emp表中第4條記錄開始,查詢4條記錄。如圖1-1所示:

圖1-1 使用limit查詢
limit子句后面的兩個(gè)數(shù)字有如下意義:
  • 第一個(gè)數(shù)字:表示查詢結(jié)果的起始行,從0開始,0表示從第一行開始??;
  • 第二個(gè)數(shù)字:表示一共查詢幾條記錄。
limit子句常用來做分頁查詢,分頁查詢就是根據(jù)需要每次只返回需要的數(shù)據(jù),而不用每次都從數(shù)據(jù)庫中全部把數(shù)據(jù)提取出來,這樣可以降低程序與數(shù)據(jù)庫之間的數(shù)據(jù)傳送量,并且可以提高程序的性能。例如有這樣一個(gè)需求,要求一頁只能顯示5條數(shù)據(jù),現(xiàn)在查詢第三頁的數(shù)據(jù),對應(yīng)的SQL語句如下所示:
  • select * from emp limit 10,5
分析:一頁顯示5條數(shù)據(jù),那么第三頁的第一條數(shù)據(jù)是第11條數(shù)據(jù),又因?yàn)閘imit的第一個(gè)數(shù)字從0開始,所以是10,顯示5條數(shù)據(jù)所以limit的第二個(gè)數(shù)字是5。如圖1-3所示:

圖1-3 分頁查詢
圖1-3中,只查詢了4條數(shù)據(jù),而我們的語句是查詢5條數(shù)據(jù),出現(xiàn)這樣的原因是因?yàn)閑mp表中有14條數(shù)據(jù),所以在第三頁中只有四條數(shù)據(jù)。
我們在進(jìn)行分頁查詢時(shí),limit的第一個(gè)數(shù)字可以通過以下公式獲得:
  • (當(dāng)前頁-1)*每頁記錄數(shù),例如查詢第三頁數(shù)據(jù),該公式就是:(3-1)*5=10。

本文版權(quán)歸傳智播客Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客Java培訓(xùn)學(xué)院
首發(fā):http://www.xamj520.com/javaee
0 分享到:
和我們在線交談!