首頁 >後端開發 >php教程 >如何透過偏移量和限制來確定 MySQL 中的總結果數?

如何透過偏移量和限制來確定 MySQL 中的總結果數?

DDD
DDD原創
2024-10-23 10:56:30871瀏覽

How to Determine the Total Result Count in MySQL with Offset and Limit?

使用MySQL 偏移量和限制確定結果總數

使用偏移量和限制實現分頁時,確定結果總數至關重要計算所需的頁數。雖然執行查詢兩次(一次有限制,一次沒有限制)可能看起來多餘,但有更好的方法。

MySQL 提供了一種無需使用 SQL_CALC_FOUND_ROWS 進行額外查詢即可擷取結果總數的方法。透過在主查詢之前新增此關鍵字,MySQL 會計算在沒有 LIMIT 子句的情況下傳回的總行數。

以下是一個範例:

<code class="sql">SELECT SQL_CALC_FOUND_ROWS *
FROM directory_listing
WHERE category_id = <category_id>
LIMIT offset, limit;</code>

執行此查詢後,您可以使用以下程式碼來擷取結果總數:

$query = $this->db->query('SELECT FOUND_ROWS() AS total_count;');
$total_count = $query->first_row()->total_count;

此方法允許您有效地檢索總計數,而無需執行額外的查詢。透過利用 SQL_CALC_FOUND_ROWS,您可以提高分頁功能的效能和資源利用率。

以上是如何透過偏移量和限制來確定 MySQL 中的總結果數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn