gpt4 book ai didi

MongoDB ODM SELECT COUNT(*) 等效

转载 作者:行者123 更新时间:2023-12-03 22:46:40 24 4
gpt4 key购买 nike

我想知道是否有相当于 MySQL-Query 的:

   SELECT COUNT(*) FROM users

在 MongoDB ODM 中?

这可能有效:

$qb = $this->dm->createQueryBuilder('Documents\Functional\Users');
$qb->select('id');
$query = $qb->getQuery();
$results = $query->execute();
echo $query->count();

但是不是所有的 ID 都返回,如果数据库中有更复杂的文档,这会如何影响性能。我不想为了计数而发送太多数据。

最佳答案

一个小贡献:

如果您以这种方式运行计数:

$count = $this->dm->createQueryBuilder('Documents\Functional\Users')
->getQuery()->execute()->count();

Doctrine 运行这个查询:
db.collection.find();

但是,如果代码如下:
$count = $this->dm->createQueryBuilder('Documents\Functional\Users')
->count()->getQuery()->execute();

在这种情况下,Doctrine 运行以下查询:
db.collection.count();

我不知道性能是否有改进,但我认为最优化

我希望这有帮助

关于MongoDB ODM SELECT COUNT(*) 等效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10978242/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com