为了账号安全,请及时绑定邮箱和手机立即绑定

如何从数据库中获取特定行?

如何从数据库中获取特定行?

PHP
德玛西亚99 2022-01-08 20:46:33
我正在创建简单的网站,需要从数据库中获取特定的列。我只需要从数据库中获取最后的第 5 列来显示,我就被困在这里了。我试过的这段代码:SELECT * FROM `post` ORDER BY `post_date` LIMIT 4, 5但是通过我页面上的这段代码,我得到了从最后 5 列到最后 10 列的所有行,我不需要只显示最后插入的第 5 列。我的完整代码如下所示:class Second {        public function second_post(){            global $pdo;            $query = $pdo->prepare('SELECT * FROM `post` ORDER BY `post_date` LIMIT 4, 5');            $query->execute();            return $query->fetchAll(PDO::FETCH_ASSOC);        }        public function fetch_data($pid){            global $pdo;            $query = $pdo->prepare('SELECT * FROM `post` ORDER BY `post_date` LIMIT 4, 5');            $query->BindValue(1,$pid);            $query->execute();            return $query->fetch();        }    }$sec = new Second;    $check = new Second;    $secs = $sec->second_post();
查看完整描述

3 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

利用 SELECT * FROM post ORDER BY post_date LIMIT 1 OFFSET 4

LIMIT 之后的第二个参数定义偏移量。这样,您只能返回 1 条记录并从第 5 条记录(偏移量 4)开始。

您也可以使用SELECT * FROM post ORDER BY post_date LIMIT 4, 1,结果将是相同的。请注意,当您使用逗号时,数字是相反的。


查看完整回答
反对 回复 2022-01-08
?
潇湘沐

TA贡献1816条经验 获得超6个赞

利用 DESC LIMIT ?

所以代码必须是最后 8 个插入列的:

$query = $pdo->prepare('SELECT * FROM `post` ORDER BY `post_id` DESC LIMIT 8');

此代码显示数据库中最后插入的列。


查看完整回答
反对 回复 2022-01-08
?
湖上湖

TA贡献2003条经验 获得超2个赞

您的查询是 SELECT * FROM post ORDER BY post_date LIMIT 4, 5

因为你只想要1行,所以 limit 应该是1.

现在你想最后插入所以你需要使用 DESC

只需使用此查询,您就完成了,

SELECT * FROM post ORDER BY post_date DESC LIMIT 1, 5


查看完整回答
反对 回复 2022-01-08
  • 3 回答
  • 0 关注
  • 209 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号