繁体   English   中英

PHP MYSQL 从行返回

[英]PHP MYSQL return from row

我想知道是否可以使 mysql_query 开始艺术数据库中的某一行。

我想从 row2 而不是 row1 开始

使用LIMIT子句,对于返回的最大记录数非常大(大于您的行数)。 通常, LIMIT用于 select 记录块,可以选择以偏移量开头。 在您的情况下,您需要偏移量之后的所有记录,因此您必须使用较高的最大数量来伪造它。

更新我刚刚阅读了文档,并且LIMIT从 0 开始偏移,所以它实际上应该是LIMIT 1, 99999

SELECT * FROM table ORDER BY id ASC LIMIT 1, 99999999999

另一方面,如果您的第一条记录的标识列小于第二行,您可以这样做:

SELECT * FROM table WHERE id < 1;

在像 MySQL 这样的关系数据库中,行没有任何默认顺序。 严重地。 即使出现几个SELECT * FROM table连续查询,按插入顺序对结果进行排序。

但是,您可以使用ORDER BY子句对特定查询的行进行排序。

此外, LIMIT子句允许进一步过滤。

取决于你想要做什么。 您不能从数据库中的某一行开始,但可以从结果集中的某一行开始:

 SELECT * FROM tbl_name LIMIT 2, 10000;

如果您出于某种原因明确需要跳过一行:

$skip = true;
while ($row = mysqli_fetch_assoc($res))
{
    if ($skip)
    {
        $skip = false;
        continue;
    }

或各种其他解决方案,具体取决于您的确切问题。

您可以使用偏移量 - 跳过一定数量的行 - 即

SELECT * FROM table LIMIT 10, 10

这将跳过前 10 行并检索接下来的 10 行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM