1
进行排序我有一个由ID,NAME,PRICE和DATE列组成的表。MySQL ORDER BY + LIMIT + OFFSET语句:如何将OFFSET舍弃,然后使用ORDER BY
我想写一个pager风格的导航,因为表中有很多条目,所以看着整个SELECT的输出变得不舒服。
我已经写了下面的要求:
SELECT id
, name
, price
, date
FROM mytable
ORDER
BY name asc
LIMIT 30 OFFSET _here's_my_offset_depending_on_the_current_position_
这工作正常,仅作为例子。当我尝试按价格排序时,似乎MYSQL首先使用ORDER BY对整个表进行排序,并且仅在它进行了偏移量排序后。
我该如何改变这种行为,换句话说,我该如何做一个偏移量,并且只能通过我喜欢的whaterver对结果行进行排序?
使用子查询。 –
排序在演示文稿上,而不是在sql中,如果你只想排序subresult。当然,传呼机仍然按名称顺序排列,这会使结果有点奇怪。 – thst
你能解释一下你为什么要这样做吗?如果你想做一个分页你的查询是好的,如果你做你想做的事(你必须使用子查询),你的结果将是非常不一致的在你的不同页面... –