如何在 MySQL 中使用 LIMIT 來計算總行數?

Patricia Arquette
發布: 2024-11-12 00:02:03
原創
823 人瀏覽過

How to Count Total Rows While Using LIMIT in MySQL?

在 MySQL 中使用 SELECT 和 LIMIT 計算行數

在 MySQL 中,LIMIT 子句可用於限制傳回的行數詢問。但是,使用 LIMIT 時,取得表格中滿足查詢條件的總行數可能會很困難。

考慮以下查詢,該查詢從兩個表之間的聯接檢索前10 行,table1和table2,基於某些條件(cond1,cond2,...,condN):

SELECT A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
    cond1, cond2, ..., condN
LIMIT 10
登入後複製

為了檢索滿足這些條件的總行數而不發出另一個不帶LIMIT的查詢,MySQL提供了SQL_CALC_FOUND_ROWS 關鍵字。透過將SQL_CALC_FOUND_ROWS 合併到初始查詢中,MySQL 在應用LIMIT 子句之前計算總行數:

SELECT SQL_CALC_FOUND_ROWS A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
  cond1, cond2, ..., condN
LIMIT 10
登入後複製

執行此查詢後,可以使用以下單獨的查詢來取得總行數:

SELECT FOUND_ROWS();
登入後複製

透過組合這兩個查詢,您可以限制傳回的行數並檢索總行數,而不需要額外的查詢。

以上是如何在 MySQL 中使用 LIMIT 來計算總行數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板