如果已经提出这个问题,我很抱歉,我确信它已经找不到解决我问题的类似问题/答案了。
我从PostgreSQL中提取数据,我有一个类似于:
的SQL语句$SQL = "SELECT * FROM my_view_table WHERE id='".$my_id."'";
从此我运行我的查询。该请求来自PostgreSQL中的视图,该视图查看更多表。那是正确的。我不确定如何限制要显示的行数。我收到大约1,000行信息,包含大约20列数据,因此查询需要花费大量时间。
有没有办法要求行0 - 100,然后101 - 200等,所以我可以一次拉100显示?我知道我将不得不使用一些代码来跟踪计数,但我只需要一些SQL帮助来查询“x到y”行。
感谢您对此问题的帮助。 (如果有另一个非常相似的问题已经回答了,那就是一个足够的答案!)
我在下面发布了我的问题的答案。
答案 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";