结构化mysql聊天查询显示顺序

结构化mysql聊天查询显示顺序,mysql,Mysql,我有一个小聊天应用程序,我正在工作,但陷入了排序和限制结果显示从数据库。我想将结果限制为20,并在HTML容器DIV的底部显示最新的结果,我需要获得聊天表的最高ID-20,然后显示这些结果。这是我目前的问题 SELECT chat_box.*, (SELECT MAX(chat_id) AS last FROM chat_box) AS last FROM chat_box ORDER BY chat_id ASC LIMIT last,20 试试这个 SELECT chat_box.*

我有一个小聊天应用程序,我正在工作,但陷入了排序和限制结果显示从数据库。我想将结果限制为20,并在HTML容器DIV的底部显示最新的结果,我需要获得聊天表的最高ID-20,然后显示这些结果。这是我目前的问题

SELECT chat_box.*,

(SELECT MAX(chat_id) AS last FROM chat_box) AS last
FROM chat_box 
ORDER BY chat_id ASC
LIMIT last,20
试试这个

 SELECT chat_box.*, MAX(chat_id) AS last FROM chat_box 

ORDER BY chat_id ASC
LIMIT 20
或者如果你想在你的查询中看到正确的答案,你应该这样做

   SELECT chat_box.*,

 (SELECT MAX(chat_id) AS last FROM chat_box LIMIT last,20) AS last2
    FROM chat_box 
 ORDER BY chat_id ASC

如果只想显示表的最后20个条目,则不需要
MAX

SELECT `you`, `should`, `use`, `a`, `column`, `list`
FROM chat_box
ORDER BY chat_id DESC
LIMIT 20
更新

SELECT `you`, `should`, `use`, `a`, `column`, `list`
FROM chat_box
WHERE chat_id > (SELECT MAX(chat_id) - 20 FROM chat_box)

你应该在这里使用
分组方式。谢谢你的回复,但这当然是我尝试的第一件事,我会列出建议的列柱名称。现在这很有效,感谢你的帮助。成为查询大师的人正在工作。我有了正确的想法,只是需要改进我的实现。再次感谢。@kabuto178继续。需要大量的练习、时间和耐心。我会的,每天使用连接和多对多表链接。如果我想将内部select查询答案保存为一个值,并能够访问该值,我将如何操作?