Phalcon性能相关查询

Phalcon性能相关查询,第1张

Phalcon性能相关查询

要使用QueryBuilder以相同的方式访问->参与者,您将必须在Query中建立联接。

代码示例可能类似于:

$queryBuilder = $this->getDI()->getModelsManager()    ->createBuilder()    ->columns(['p.id','participants.*'])    ->addFrom('EntityProjects', 'p')    ->leftJoin('EntityParticipants', 'participants.projectId = p.id', 'participants')    ->groupBy('p.id, participants.id')    ->orderBy('p.id ASC');$resultSet = $queryBuilder->getQuery()->execute();

groupBy()
这里使用by来使结果可能是多维的。

这种查询(在PgSQL下进行了测试)使Phalcon

pi
在项目的Resultsset中创建了参与者的一些后续ResultSet对象
p

您仍然可以使用进行遍历,

foreach()
但毕竟 我不确定它是否减少了最终查询数

进行的射击仍保留为Resultset,因此您应

$result = $resultSet->toArray()
对此
$result['pi']
保持谨慎。
您可以通过在
columns()
参数中定义确切的列来强制将其转储为数组。
它有其缺点-
groupBy()
至少在这里运行的Phalcon
1.3.2和PHP 5.5.3 im上,您将不再从中受益。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4991469.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-14
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存