Zend framework2 SQL\u计算\u已找到\u行+zf2

Zend framework2 SQL\u计算\u已找到\u行+zf2,zend-framework2,sql-calc-found-rows,Zend Framework2,Sql Calc Found Rows,我使用了一个简单的select语句,它使用zf2中的SQL_CALC_FOUND_行。代码如下所示,并使用量词 $select = $this->getSlaveSql()->select('posts'); $select->quantifier(new Expression('SQL_CALC_FOUND_ROWS')); $select->columns([ 'total'=>new Expression("FOUND_ROWS()"),

我使用了一个简单的select语句,它使用zf2中的SQL_CALC_FOUND_行。代码如下所示,并使用量词

$select = $this->getSlaveSql()->select('posts');
$select->quantifier(new Expression('SQL_CALC_FOUND_ROWS'));
$select->columns([
       'total'=>new Expression("FOUND_ROWS()"),
       '*'
]);
生成的sql如下所示

SELECT SQL_CALC_FOUND_ROWS FOUND_ROWS() AS `total`, `posts`.* FROM `posts`
截图:

但由于某些原因,find_行始终返回为0,我不想为分页添加第二个查询。请提供帮助。

找到的行通常用于后续查询。我怀疑您是否可以在选择数据的同一个数据库中运行它。参见文档中的示例:

还要注意,SQL\u CALC\u FOUND\u行在没有限制的查询中没有意义。

FOUND\u行通常用于后续查询。我怀疑您是否可以在选择数据的同一个数据库中运行它。参见文档中的示例:

还要注意,SQL\u CALC\u FOUND\u行在没有限制的查询中没有意义。

FOUND\u行通常用于后续查询。我怀疑您是否可以在选择数据的同一个数据库中运行它。参见文档中的示例:

还要注意,SQL\u CALC\u FOUND\u行在没有限制的查询中没有意义。

FOUND\u行通常用于后续查询。我怀疑您是否可以在选择数据的同一个数据库中运行它。参见文档中的示例:


还要注意,SQL\u CALC\u FOUND\u行在没有限制的查询中是没有意义的。

我在限制方面也有同样的问题。使用SELECT SQL\u CALC\u FOUND\u ROWS FOUND\u ROWS作为总计,posts.*FROM posts LIMIT“10”也没有效果:正如我所说,在选择posts数据后,FOUND\u ROWS调用需要在单独的查询中进行。谢谢tim,正如您所说,使用另一个SELECT查询查找到的行可以解决此问题。我在LIMIT方面也有同样的问题。使用SELECT SQL\u CALC\u FOUND\u ROWS FOUND\u ROWS作为总计,posts.*FROM posts LIMIT“10”也没有效果:正如我所说,在选择posts数据后,FOUND\u ROWS调用需要在单独的查询中进行。谢谢tim,正如您所说,使用另一个SELECT查询查找到的行可以解决此问题。我在LIMIT方面也有同样的问题。使用SELECT SQL\u CALC\u FOUND\u ROWS FOUND\u ROWS作为总计,posts.*FROM posts LIMIT“10”也没有效果:正如我所说,在选择posts数据后,FOUND\u ROWS调用需要在单独的查询中进行。谢谢tim,正如您所说,使用另一个SELECT查询查找到的行可以解决此问题。我在LIMIT方面也有同样的问题。使用SELECT SQL\u CALC\u FOUND\u ROWS FOUND\u ROWS作为总计,posts.*从posts限制“10”也没有效果:正如我所说,在您选择posts数据后,FOUND\u ROWS调用需要在单独的查询中。谢谢tim,如您所说,使用另一个SELECT查询查找到的行可以解决此问题。