MYSQL从表中选择,获取表中的最新/最后10行

Dyl*_*oss 11 php mysql sql sql-order-by

什么是最好,最简单的方法?我的查询目前是:

  SELECT * 
    FROM chat 
   WHERE (userID = $session AND toID = $friendID) 
      OR (userID = $friendID AND toID = $session) 
ORDER BY id 
   LIMIT 10
Run Code Online (Sandbox Code Playgroud)

这显示前10行,而不是最后10行.

编辑:我想要最后10行(是的,DESC这样做)但是我希望它们以ASCENDING顺序返回.

Sim*_*yer 24

要颠倒顺序(因此得到最后10而不是前10),请使用DESC而不是ASC

编辑

根据您的评论:

SELECT * FROM (
  SELECT * 
  FROM chat 
  WHERE (userID = $session AND toID = $friendID) 
    OR (userID = $friendID AND toID = $session)  
  ORDER BY id DESC
  LIMIT 10
) AS `table` ORDER by id ASC
Run Code Online (Sandbox Code Playgroud)