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

标签 php sql postgresql count rows

如果已经有人问过这个问题,我深表歉意,我确定有人问过我只是找不到类似的问题/答案来解决我的问题。

我正在从 PostgreSQL 中提取数据并且我有一个类似于以下的 SQL 语句:

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

从这里我运行我的查询。该请求从 PostgreSQL 中的一个 View 中提取,该 View 查看更多表。那是正确的。我不确定如何限制要显示的行数。我收到大约 1,000 行信息和大约 20 列数据,因此查询需要花费大量时间。

有没有办法请求第 0 - 100 行,然后是 101 - 200 行等,这样我就可以一次拉出 100 行来显示?我知道我必须使用一些代码来跟踪计数,但我只需要一些 SQL 帮助来查询“x 到 y”行。

感谢您对这个问题的帮助。 (如果已经回答了另一个非常相似的问题,那么指向该问题的链接就足够了!)

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

最佳答案

我从 gnarly 的 LIMIT on SQL 建议中找到了这个问题的答案

$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";

关于PHP/SQL - 显示每个查询的特定行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28219230/

相关文章:

PHP "variable wrapper"作为对多个数据库进行 SQL 查询的数组

sql - 将货币换算添加到 SQL 查询

mysql - SQL:在两个表之间连接外键并仅返回项目数;不是实际元素

sql - NULL 值对 SQL Server 存储的影响?

PostgreSQL:硬 max_wal_size 或复制槽超时

php - 如何在 SQL 中选择日期的第一个和最后一个值?

javascript - 使用类更改特定 <td> 内的文本

php - 如何将查询字符串参数传递给 PHP 二进制文件?

php - 如何防止 PHP 中的 SQL 注入(inject)?

mysql - 使用另一个表的平均值插入到一个表中