查询SQL端的分页

时间:2013-01-06 05:55:56

标签: mysql

如何使用查询在mysql中实现自定义分页?根据我需要从数据库中获取记录的页码,是否可能?对此进行一些查询会很有帮助。

感谢。

3 个答案:

答案 0 :(得分:1)

通过PHP,您需要:

$ PageSize - 表示您要显示的行数 $ Pageoffset - 表示(CurrentPageNo * PageSize)

     $query =" select * from table limit $Pageoffset, $PageSize';
     // limit restricts the no. of rows fetching.

你可以在mysql中做到这一点。

答案 1 :(得分:1)

例如,

SELECT * FROM `your_table` LIMIT 0, 10 

将显示从第一条记录开始的10条记录。

答案 2 :(得分:1)

SELECT * FROM items LIMIT 0,10

要显示您的分页,您还需要知道行的总数,以便计算要显示的页面链接数量:

页数:1 2 3 4 5 6 ....

查询MySQL以计算“SELECT COUNT(*)...”之类的行数不是一个选项,您首先会丢失一些使用“LIMIT”查询保存的性能。有一种更有效的方法,您只需稍微修改原始查询,例如:

$result = mysql_query('SELECT SQL_CALC_FOUND_ROWS * FROM items LIMIT 0,10');

在第一个查询之后,您立即运行:

$countData = mysql_fetch_assoc(mysql_query('SELECT found_rows() AS total'));
$totRows = $countData['total'];