在底部对最新的私人消息进行排序

时间:2014-03-17 16:17:07

标签: php mysql

我有PM系统,我想从底部到顶部读取,也有LIMIT 50显示

问题是,如果我通过mess_id ASC订购它,它会显示前50个结果,如果有更多结果则不显示。

如果我通过mess_id DESC订购它可行,但它会在顶部显示结果

enter image description here

我希望节目最后50个结果,最后一个结果位于底部。 在表中还有日期字段。 这是代码之一

SELECT mess_id, message, mess_from_id, date FROM messages  ORDER BY mess_date DESC LIMIT 50

如果有人可以提供帮助,我将不胜感激

提前致谢

2 个答案:

答案 0 :(得分:4)

SELECT * FROM (
    SELECT * FROM table ORDER BY id DESC LIMIT 50
) sub
ORDER BY id ASC

请在此处查看此答案:Select last N rows from MySQL

答案 1 :(得分:0)

你需要"双重订单":

select m.*
from (SELECT mess_id, message, mess_from_id, date
      FROM messages 
      ORDER BY mess_date DESC
      LIMIT 50
     ) m
order by mess_date ASC;