首页 > 解决方案 > 如何从数据库中获取特定行?

问题描述

我正在创建简单的网站,需要从数据库中获取特定的列。我只需要从数据库中获取最后的第 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();

标签: phpmysqlsql

解决方案


利用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,结果将是相同的。请注意,当您使用逗号时,数字是相反的。


推荐阅读