带有限制a,b的mysql过滤

时间:2013-01-26 12:07:37

标签: mysql

我有一个关于mysql限制的问题,我使用查询

select id,name from tbl where id='2' order by name limit 1;

select id,name from tbl where id='2' order by name limit 1,2;

第一个查询查询显示该行,但第二个查询不显示。 如果我使用"限制1,2和#34;如何编写有效的查询而不是"限制1"。我用ajax来制作一个paginatioin。

谢谢

2 个答案:

答案 0 :(得分:3)

LIMIT的语法是

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

(见the documentation

您添加了1的偏移量,因此它将跳过第一个(也是唯一的)匹配。因此,你没有得到任何返回的记录!

而是尝试使用

LIMIT 0,2

(虽然有(希望!)一条id='2'的记录,但使用LIMIT

是没有意义的

答案 1 :(得分:2)

你有id = 2这会给你一条记录。

如果你有更多ID为id = 2的id,那么你可以使用LIMIT 1,2

这里是限制

的例子
      SELECT * FROM `your_table` LIMIT 0, 10 

    //This will display the first 10 results from the database.

      SELECT * FROM `your_table` LIMIT 5, 5 

      //This will show records 6, 7, 8, 9, and 10

,在你的情况下

     limit 1   <---- will show the first record in your table
     limit 1,2 <----will show records first and second  in your table

如果你的id是自动增量,你不需要限制,因为它已经是唯一的