-2

现在,我在这个奇妙的网站上阅读了有关如何检查数据库中的时间戳是否在 now() 之前的内容,这回答了我的部分问题。

但是我的问题的其余部分仍然让我难以理解:

您如何不仅可以检查BEFORE now() 之前的时间戳,还可以限制之前查询的时间戳数?

我有一个充当留言簿的数据库,输出是一个看起来像便利贴板的闪存片。您填写一张表格,提交的内容会立即“粘贴”到便利贴板上。问题是当你第一次加载页面时,它会加载从 id-0 到 id-5,000,000 的每一个帖子,依此类推。

我想限制加载的数量,以便查询查看以下内容:

当前时间戳是多少?
回到过去(例如) 10 个条目之前
从那个点开始发布

我在数据库中的字段是:id、comments、timestamp

编辑
我正在查看一些答案,我想问一下限制。如果我对查询设置了限制,我现在还能查询过去的帖子吗?

示例:假设有两个人同时查看该网站。一位访问者在数据库中发表评论。我希望第 2 个人仍然能够看到他最后弹出的评论。

Flash 便利贴区域运行一个 php 脚本,该脚本查询数据库并将其导出为 Flash 可以读取的 XML 格式。每隔 5 秒,flash 会重新查询数据库以检查更多帖子。

如果我在查询中设置了限制,我仍然能够即时获取新条目吗?我只希望 LIMIT 生成一个从零点偏移的起点

4

2 回答 2

0
SELECT * FROM
    (SELECT ... WHERE dt<NOW() ORDER BY dt DESC LIMIT 10) a
ORDER BY a.dt ASC

或者

SELECT ... WHERE dt<NOW() ORDER BY dt DESC LIMIT 10 

检查哪个更适合您。

于 2012-05-11T13:24:46.333 回答
0

我认为您要查找的内容称为Limit 您只需将其放在语句的末尾,查询将返回您想要的结果数量

YOUR QUERY LIMIT 0,10

这将返回 10 个第一个结果

于 2012-05-11T13:06:50.273 回答