MySQL:如何查询以获取特定位置的记录?

时间:2012-01-19 11:06:12

标签: php mysql select

我有一个简单的表(产品),其字段为id,label。

我希望从中获得第n个唯一的行。如果我这样查询:

$query = 'SELECT * FROM product ORDER BY id ASC WHERE id ='.$n; 

其中$ n是一个数字,它将返回id = number的行但是我的表是这样的:

id | label
 1 | sometext
 4 | sometext
33 | sometext
40 | sometext

...

我的意思是,如果我想获得第3行(33 | sometext),那么查询就无法工作。 有没有一种简单的方法来获得第3或第4行?

感谢。

3 个答案:

答案 0 :(得分:4)

SELECT * FROM product ORDER BY id LIMIT 2,1;

这将从表中获得第3行。

2是起点

1是返回的结果数

答案 1 :(得分:2)

"SELECT * FROM product ORDER BY id ASC LIMIT 2,1"

将为您提供第三行

答案 2 :(得分:0)

SELECT *
FROM
  (SELECT * 
   FROM product 
   ORDER BY id ASC 
   LIMIT'.$n.' )
ORDER BY ID DSC
LIMIT 1