在 MySQL 中使用帶有 LIMIT 的 SELECT 時如何計算行數?

Mary-Kate Olsen
發布: 2024-11-10 13:09:03
原創
429 人瀏覽過

How to Count Rows When Using SELECT with LIMIT in MySQL?

在MySQL 中使用有LIMIT 的SELECT 時計算行數

在MySQL 中,在SELECT 查詢中使用LIMIT 子句會限制傳回的行數。但是,如果您的查詢還包含複雜的篩選條件,您可能想知道滿足這些條件的總行數,即使它們不是由 LIMIT 傳回的。

為了實現此目的,MySQL 提供了 SQL_CALC_FOUND_ROWS修飾符。以下是如何在查詢中使用它:

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();
登入後複製

在此查詢中:

  • 第一個SELECT 語句使用SQL_CALC_FOUND_ROWS 指示MySQL 計算符合條件的總行數.
  • 第二個SELECT 語句使用FOUND_ROWS()函數來檢索計算的行數。

此方法可讓您擷取具有 LIMIT 的分頁結果集和完整行在單一資料庫查詢中進行計數。請注意,必須在相同連線中且在呼叫 FOUND_ROWS() 函數之前使用 SQL_CALC_FOUND_ROWS。

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

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