【发布时间】:2026-01-20 07:30:01
【问题描述】:
function fullJoinTest()
{
$con = ModelBase::getConnection();
$sql = "SELECT airline, airport
FROM airlines
LEFT JOIN airports on airlines.icao_code = airports.icao_code";
$query = $con->prepare($sql) or die("Error preparing sql in Search (test) ");
$query->execute() or die("Error executing query in Search (test) ");
error_log($query->num_rows);
}
现在它不断返回 0 以返回它返回的行数。当我将相同的查询插入 phpMyAdmin 时,它会返回预期的结果集。
MySQLi 可以很好地处理 JOIN 吗?还有其他方法可以解决这个问题吗?最终它将有更多的连接和一些WHERE 子句。我想继续使用准备好的语句。
【问题讨论】:
-
您是否使用与 phpMyAdmin 相同的凭据从 PHP 连接到数据库?
-
是的,它们是相同的。
-
如果您在数据库中启用查询跟踪,您是否看到来自 php 的 0 行查询以及来自 phpmyadmin 的查询?
-
如何启用查询跟踪?我唯一拥有的数据库访问权限是通过 phpMyAdmin。