PHP / SQL - 显示每个查询的特定行数

时间:2015-01-29 16:05:15

标签: php sql postgresql count rows

如果已经提出这个问题,我很抱歉,我确信它已经找不到解决我问题的类似问题/答案了。

我从PostgreSQL中提取数据,我有一个类似于:

的SQL语句
$SQL = "SELECT * FROM my_view_table WHERE id='".$my_id."'";

从此我运行我的查询。该请求来自PostgreSQL中的视图,该视图查看更多表。那是正确的。我不确定如何限制要显示的行数。我收到大约1,000行信息​​,包含大约20列数据,因此查询需要花费大量时间。

有没有办法要求行0 - 100,然后101 - 200等,所以我可以一次拉100显示?我知道我将不得不使用一些代码来跟踪计数,但我只需要一些SQL帮助来查询“x到y”行。

感谢您对此问题的帮助。 (如果有另一个非常相似的问题已经回答了,那就是一个足够的答案!)

我在下面发布了我的问题的答案。

1 个答案:

答案 0 :(得分:2)

我从gnarly建议的关于SQL的LIMIT

中找到了这个问题的答案
$sql = "SELECT * FROM my_table LIMIT X OFFSET Y";

其中LIMIT仅给出您想要的X行数,OFFSET给出Y起始点。所以显示0到30行:

$sql = "SELECT * FROM my_table LIMIT 30 OFFSET 0";

显示第31至60行:

$sql = "SELECT * FROM my_table LIMIT 30 OFFSET 30";