我有一个mysql查询
SELECT * FROM lead LIMIT 5 OFFSET 0
从表格导程中选择数据并将结果限制为5,偏移量为0.我想通过desc对其结果进行排序,因此结果将首先填充为最后添加的数据。
我试过
SELECT * FROM lead LIMIT 5 OFFSET 0 order by id desc
但它不起作用......请纠正我错在哪里以及该做什么。
提前致谢。
答案 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
。