我正在尝试这样做,所以消息显示如下
*旧消息
更快的消息
较新消息
最新消息*
我尝试了几种不同的方法。通过
SELECT * FROM place_chat WHERE whereto = '".mysql_real_escape_string($where)."' ORDER BY id DESC LIMIT 7"
^但是这只是在顶部显示最新消息的结果,所以我尝试了这个。
SELECT * FROM place_chat WHERE whereto = '".mysql_real_escape_string($where)."' ORDER BY id ASC LIMIT 7"
^然后我发布了它只是显示最旧的消息,而不是调整它显示的方式,并确保并测试它。它只显示了最早的消息。
有人可以解释这样做的方法吗?我一直想尝试一段时间。
答案 0 :(得分:2)
您需要先获取最新的7条记录,然后重新排序:
SELECT *
FROM
(
SELECT *
FROM place_chat
WHERE whereto = mysql_real_escape_string($where)
ORDER BY id DESC
LIMIT 7
) newest_place_chat
ORDER BY id ASC
答案 1 :(得分:0)
由于您设置了标签'php',我假设您从php脚本中查询数据库,该脚本也将查询结果转换为输出,在这种情况下很可能是html表。
您可以简单地转换遍历php中结果数组的顺序。这样您就不必在查询中更改任何内容。