【问题标题】:MySQL Inner Join query only returning one result in PHPMySQL Inner Join 查询在 PHP 中只返回一个结果
【发布时间】:2015-07-18 18:09:07
【问题描述】:

我的数据库中有两个表:users 和 tickets。 users 表包含用户信息,tickets 表包含与 user_id 关联的票证信息users 表。很容易。我遇到的问题是,当我运行INNER JOIN MySQL 查询和print_r 结果时,当我应该获得多个结果时,我得到一个结果,正如您在 SequelPro 中使用相同的 MySQL 查询所看到的那样:@ 987654321@

代码

$sql = "SELECT tickets.user_id, ticket_text, username FROM tickets INNER JOIN users ON tickets.user_id = users.id";
$stmt = $conn->query($sql);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_ASSOC);

print_r($result);

这是通过print_r 函数转储的内容:http://screencast.com/t/c5Llsb8Mj7y

为什么只有一个结果?

【问题讨论】:

  • fetch 只返回数据库中的一行。要么使用循环遍历结果集,要么使用fetchAll 一次获取所有结果
  • 啊,菜鸟的错误!我的坏人!谢谢! :)

标签: php mysql inner-join


【解决方案1】:

在您的代码中,这一行:

$result = $stmt->fetch(PDO::FETCH_ASSOC);

应改为:

$result = $stmt->fetchAll(PDO::FETCH_ASSOC);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-02
    • 1970-01-01
    • 2023-03-16
    • 2011-12-22
    相关资源
    最近更新 更多