首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql:从DESC限制中选择最后10行

mysql:从DESC限制中选择最后10行
EN

Stack Overflow用户
提问于 2012-12-13 05:21:03
回答 2查看 23.1K关注 0票数 2

我在一个块上工作,这将显示最近10个帖子,当用户点击“加载更多”按钮时,我想显示10个较老的帖子。

如果我已经在使用DESC LIMIT,我如何选择最后10行?

代码语言:javascript
复制
mysql_query("SELECT title,id,alt_name FROM dle_post WHERE approve='1' AND date >= '$monthagodate'
AND date < '$curdate' + INTERVAL 1 day ORDER BY date DESC LIMIT $more;");
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-13 05:24:51

您只需使用一个参数即可使用LIMITing。但是您可以使用LIMIT x,y来指定x (要返回的第一条记录的位置)和y (要返回的记录数)。

将像results.php?start=x这样的变量传递给页面以设置起始位置。

代码语言:javascript
复制
if (!isset( $_REQUEST['start'] ) ) { $start = 0; } else { $start = (int)$_REQUEST['start']; }

mysql_query("SELECT title,id,alt_name FROM dle_post WHERE approve='1' AND date >= '$monthagodate'
AND date < '$curdate' + INTERVAL 1 day ORDER BY date DESC LIMIT $start,10;");

然后,您可以生成一个指向下一个页面的链接,如下所示:

echo '<a href="results.php?start=' . ($_REQUEST['start']+10) . '">Next 10 results</a>';

票数 5
EN

Stack Overflow用户

发布于 2012-12-13 05:25:27

您应该添加另一个参数$start并使用以下查询

代码语言:javascript
复制
mysql_query("SELECT title,id,alt_name FROM dle_post WHERE approve='1' AND date >= '$monthagodate' AND date < '$curdate' + INTERVAL 1 day ORDER BY date DESC LIMIT $start, $more;");

这里,$start用于告诉MySQL要获取的记录的起始点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13848857

复制
相关文章

相似问题

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