php – 在Zend DB Table Select中使用SQL_CALC_FOUND_ROWS获取总行数

有没有办法在常规 mysql查询中使用sql_CALC_FOUND_ROWS来获取Zend db中的总行数.除了运行没有limit子句的相同查询之外,我还没有找到类似的功能.

解决方法

$db->select()
   ->from($tableName,array(
       new Zend_Db_Expr('sql_CALC_FOUND_ROWS id'),'name','price'
   ));

您还可以尝试用COUNT(*)替换所有cols并第二次运行查询.它实际上可能更有效(即使它是违反直觉的).这是我的应用程序的情况.

你可以这样做:

$select->reset('cols')->reset('limit')->cols('COUNT(*)'); //there is a constant for the 'cols' in Select class
$db->query($select);

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...