如何使用mysql和sphinx获得结果总数?
首先,我尝试使用PDO语句,它确实返回一个数字,但它不准确。
$array = $pdo_sphinx->prepare("select * from `my_index` where MATCH ('@name ($search)') limit $start, $limit");
$array->execute();
$query = $pdo_sphinx->prepare("select COUNT(*) from `my_index` where MATCH ('@name ($search)')");
$query->execute();
$total = $query->fetchColumn();然后我看到,如果在查询后运行total_found,您可以从SHOW META获得它。
$array = $sphinx->Query("select * from `my_index` where MATCH ('@name ($search)') limit $start, $limit; SHOW META");
$total = $array['total_found'];当应该是9时,$total将返回0。如何从上面的查询中获得正确的total_found?有办法用PDO语句来做到这一点吗?我需要正确的分页结果
发布于 2016-03-23 13:16:57
注意,当您添加'SHOW META‘时,它会使它成为一个多查询。有两个单独的查询,每个查询都有自己的结果集。
(是的,使用COUNT(*)可能不准确,因为分组可能有点近似)
https://stackoverflow.com/questions/36178569
复制相似问题