在mysql查询中使用偏移和限制添加顺序

时间:2011-11-16 09:14:56

标签: mysql

我有一个mysql查询

SELECT * FROM lead LIMIT 5 OFFSET 0 

从表格导程中选择数据并将结果限制为5,偏移量为0.我想通过desc对其结果进行排序,因此结果将首先填充为最后添加的数据。

我试过

SELECT * FROM lead LIMIT 5 OFFSET 0 order by id desc

但它不起作用......请纠正我错在哪里以及该做什么。

提前致谢。

2 个答案:

答案 0 :(得分:40)

你必须

select * from lead order by id desc LIMIT 5 OFFSET 0

手册(http://dev.mysql.com/doc/refman/5.0/en/select.html)描述LIMIT仅允许出现在ORDER BY之后。

答案 1 :(得分:4)

ORDER BY子句位于LIMIT子句之前。这是有道理的,因为您首先要求对记录集进行排序,然后应用限制。

SELECT * FROM lead ORDER BY id DESC LIMIT 0, 5

您可以使用LIMIT offset, row_ count语法或LIMIT row_count OFFSET offset

检查: http://dev.mysql.com/doc/refman/5.0/en/select.html