首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL负极限?

问MySQL负极限?
EN

Stack Overflow用户
提问于 2010-01-08 10:35:34
回答 3查看 3.5K关注 0票数 1

我正在做简单的基于网络的聊天,所以我需要(例如)从一个MySQL数据库获得(例如) 30条最新消息。这不成问题,但我如何才能把数据往上倒序呢?我是说,最古老的信息是第一条。我必须在额外的时间内取得最新的30张唱片。

编辑:谢谢你的回答,但是.

添加DESC限制30的

命令

给予:

15、14、13、12、11

...and我需要:

11,12,13,14,15

我知道我可以用一个子查询来获得它。有什么更好的方法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-01-08 11:02:40

如前所述,一个简单的"desc“排序得到最古老的30条消息,而不是最新消息(尽管它们的顺序是正确的)。

实际上你所需要的是:

(按添加的desc限制从表顺序选择col )

我希望这能帮到你。

票数 4
EN

Stack Overflow用户

发布于 2010-01-08 10:44:01

没有子查询,我看不出有任何方法可以做到这一点,但这不应该是个问题。外部ORDER BY只排序30行,因此性能损失可以忽略不计。

代码语言:javascript
复制
SELECT * FROM
(
  SELECT *
  FROM posts
  ORDER BY post_time DESC
  LIMIT 0, 30
) x
ORDER BY post_time ASC

当然,您应该使用实际的列名而不是*。

票数 5
EN

Stack Overflow用户

发布于 2010-01-08 10:40:10

假设您有一个名为MessageTimestamp的列,它包含每个消息的时间戳:

代码语言:javascript
复制
SELECT [...] FROM MyChatTable ORDER BY MessageTimestamp DESC LIMIT 30
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2026934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档