2014-11-15 14 views
0

問題與實現方式分頁顯示的頁面如何知道下一個記錄存在

我在我的應用程序查詢它加載表

select * from vendor_requested_categories 
where status = 0 ORDER BY document_id ASC Limit 1 

結果的第一條記錄

+-------------+---------+--------+------+------------------+ 
| document_id | T1 | T2 | T3 | vendor_brand_id | 
+-------------+---------+--------+------+------------------+ 
|    |   |  |  |     | 
|   1 | Popcorn | Bucket | NULL |    3000 | 
+-------------+---------+--------+------+------------------+ 

我的問題是:

是否有可能知道是否有下一個R生態?

回答

1

創建分頁時,您必須知道給定查詢(過濾器)有多少條記錄,因此您可以根據限制計算總頁數。

所以,你可以簡單地做到這一點,你的查詢之前獲得總記錄:

select COUNT(*) AS N from vendor_requested_categories where status = 0 

然後你就可以計算偏移,從頁面PARAM:

$limit = 10; 
$offset = ((int)$_GET['page'] * $limit) - $limit; 

這裏是分頁查詢

select * from vendor_requested_categories where status = 0 ORDER BY document_id ASC Limit $offset, $limit 

當您知道總頁數和當前頁面時,很容易知道您是否下一個記錄。

1

您可以使用count()來查找總記錄數。它應該是一些這樣的事:

SELECT document_id, T1, T2, T3, vendor_brand_id, count(*) as total_records 
FROM vendor_requested_categories 
WHERE status = 0 ORDER BY document_id ASC LIMIT 1 

所以用這個就可以加載的總記錄數,並在同一時間,而不是在數據庫使兩個查詢您的第一個記錄。

相關問題