Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Zend framework Zend_Paginator-增加查询_Zend Framework_Zend Paginator - Fatal编程技术网

Zend framework Zend_Paginator-增加查询

Zend framework Zend_Paginator-增加查询,zend-framework,zend-paginator,Zend Framework,Zend Paginator,我开始使用Zend_Paginator, 这一切都很好,但我注意到还有一个查询会减慢加载时间。 附加查询: SELECT COUNT(1) AS `zend_paginator_row_count` FROM `content` 正常查询: SELECT `content`.`id`, `content`.`name` FROM `content` LIMIT 2 PHP: 是否可以将两个查询合并为一个查询(以获得更好的性能)?确保所选表的一个或多个基于int的列上有索引。因此,count查

我开始使用Zend_Paginator, 这一切都很好,但我注意到还有一个查询会减慢加载时间。 附加查询:

SELECT COUNT(1) AS `zend_paginator_row_count` FROM `content`
正常查询:

SELECT `content`.`id`, `content`.`name` FROM `content` LIMIT 2
PHP:


是否可以将两个查询合并为一个查询(以获得更好的性能)?

确保所选表的一个或多个基于int的列上有索引。因此,count查询不会有太大的性能影响。您可以使用
setRowCount()
提供计数(如果您有)

发件人:

注意:不是选择每个 匹配给定查询的行时 DbSelect和DbTableSelect适配器 仅检索最小数量的 显示所需的数据 当前页面。正因为如此,一个 第二个查询是动态生成的 要确定 匹配行。然而,这是可能的 直接提供一个或多个计数 问问你自己。请参阅setRowCount()文件 方法的DbSelect适配器中 更多信息


确保在所选表的一个或多个基于int的列上有索引。因此,count查询不会有太大的性能影响。您可以使用
setRowCount()
提供计数(如果您有)

发件人:

注意:不是选择每个 匹配给定查询的行时 DbSelect和DbTableSelect适配器 仅检索最小数量的 显示所需的数据 当前页面。正因为如此,一个 第二个查询是动态生成的 要确定 匹配行。然而,这是可能的 直接提供一个或多个计数 问问你自己。请参阅setRowCount()文件 方法的DbSelect适配器中 更多信息


如果将两者合并的话,性能不会有太大的提高。实际的select内容中包含limit语句(当您试图获取数据库中整个表的子集时),其中count需要对数据库中的所有行进行计数。这样做的原因是为了避免仅仅为了获得计数而必须选择非常大的数据集。

合并这两个数据集实际上不会有多大的性能提升(如果有的话)。实际的select内容中包含limit语句(当您试图获取数据库中整个表的子集时),其中count需要对数据库中的所有行进行计数。这样做的原因是为了避免仅仅为了获得计数而必须选择非常大的数据集

$adapter = new Zend_Paginator_Adapter_DbSelect($table->select()->from($table, array('id', 'name')));
$paginator = new Zend_Paginator($adapter);