MySQL 内连接查询在 PHP 中只返回一个结果
MySQL Inner Join query only returning one result in PHP
我的数据库中有两个 table:users
和 tickets
。 users
table 有用户信息,tickets
table 有门票信息,user_id
关联到 users
table.很容易。我 运行 遇到的问题是,当我 运行 一个 INNER JOIN
MySQL 查询和 print_r
结果时,我应该得到一个结果在 SequelPro 中使用相同的 MySQL 查询可以得到多个结果:http://screencast.com/t/dwrVExxLPS
代码
$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
为什么只有一个结果?
在您的代码中,这一行:
$result = $stmt->fetch(PDO::FETCH_ASSOC);
应改为:
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
我的数据库中有两个 table:users
和 tickets
。 users
table 有用户信息,tickets
table 有门票信息,user_id
关联到 users
table.很容易。我 运行 遇到的问题是,当我 运行 一个 INNER JOIN
MySQL 查询和 print_r
结果时,我应该得到一个结果在 SequelPro 中使用相同的 MySQL 查询可以得到多个结果:http://screencast.com/t/dwrVExxLPS
代码
$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
为什么只有一个结果?
在您的代码中,这一行:
$result = $stmt->fetch(PDO::FETCH_ASSOC);
应改为:
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);