限制返回的行数 - mysql

时间:2013-07-11 11:43:07

标签: php mysql limit

我正在尝试限制查询返回的行数。这是我正在使用的代码。

$min = ($id2-1)*16;
$max = $id2*16;

$row = mysql_query("SELECT * FROM anunt WHERE masina = 2 ORDER BY anuntID DESC LIMIT $min, $max") or die(mysql_error());

ID2是从链接解析的值。因此,当ID2为2时,查询应该有16到32的限制 - 所以总共有16个条目。但我的问题是查询返回32个条目。这就像是跳过'$ min'的价值。我检查了所有内容,最后,该查询似乎是问题。

有什么想法吗?感谢

4 个答案:

答案 0 :(得分:6)

替换它:

$row = mysql_query("SELECT * FROM anunt WHERE masina = 2 ORDER BY anuntID DESC LIMIT $min, $max") or die(mysql_error());

由此:

$records = $max - $min;
$row = mysql_query("SELECT * FROM anunt WHERE masina = 2 ORDER BY anuntID DESC LIMIT $records, $min") or die(mysql_error());

答案 1 :(得分:4)

[LIMIT {[offset,] row_count | row_count OFFSET offset}]

你传递row_count = 32 检查manual

答案 2 :(得分:4)

语法为LIMIT start_index, amount,而非LIMIT start_index, end_index

答案 3 :(得分:1)

使用LIMIT

您的查询LIMIT FROM TO