小编Ali*_*aee的帖子

PHP MongoDB 计数记录

我在 php 中编写了一个简单的 MongoDB 查询

计算过去一小时的在线总数,一切正常

但我觉得这种方式不利于性能

因为查询它自己返回所有匹配数据(因此该查询中有不需要的数据)

我需要的只是记录数

我有一个包含数百万个文档的集合

脚本:

<?php
    // Last Online Time
    $Time = time() - 86400;

    // Connection
    $Manager = new MongoDB\Driver\Manager("mongodb://" . DB_USERNAME . ":" . DB_PASSWORD . "@" . DB_HOST . ":" . DB_PORT . "/" . DB_NAME);

    // Query
    $Query = new MongoDB\Driver\Query(['LastOnlineTime' => ['$gt' => (int) $Time]], []);

    // Result
    $Result = $Manager->executeQuery(DB_NAME . "." . $Collection, $Query);

    // Get Total Online In 1 Hour Ago
    echo count($Result->toArray());
?>
Run Code Online (Sandbox Code Playgroud)

是我的感觉吗?

php database mongodb

5
推荐指数
1
解决办法
6496
查看次数

标签 统计

database ×1

mongodb ×1

php ×1