如果我运行一个指定 SQL_CALC_FOUND_ROWS 的查询,因此返回结果的总数而不是 LIMIT 子句中指定的有限数量,它会崩溃(这意味着将返回另一个同时查询的值而不是当前查询的值)。我不知道从不同客户端同时查询数据库是否会混淆结果,这就是我问的原因。这是一个例子:
$query = $this->db->query("
SELECT SQL_CALC_FOUND_ROWS r.title, r.raiting, u.display_name, c.category
FROM reviews r
INNER JOIN categories c
ON r.category_id = c.id
INNER JOIN users u
ON r.user_id = u.id
WHERE c.category = ?
LIMIT ?, 7
", $category, $position);
然后我会运行:
$this->db->query("
FOUND_ROWS()
");
同样,如果另一个客户端正在运行另一个相同类型的查询,则不会FOUND_ROWS()
返回该另一个客户端查询的值?