sql >> データベース >  >> NoSQL >> MongoDB

MongoDB集約フレームワークで中央値を計算します

    中央値は、データセット全体を並べ替えたり、データセットのサイズにも比例する深​​さの再帰を使用したりするため、一般的なケースでは計算がやや​​難しいです。これが、多くのデータベースにすぐに使用できる中央値演算子がない理由かもしれません(MySQLにも中央値演算子がありません)。

    中央値を計算する最も簡単な方法は、これら2つのステートメントを使用することです(中央値を計算する属性がaと呼ばれると仮定します)。 コレクション内のすべてのドキュメントcollに適用する必要があります ):

    count = db.coll.count();
    db.coll.find().sort( {"a":1} ).skip(count / 2 - 1).limit(1);
    

    これは、人々がMySQLに提案するものと同等です。



    1. MongoDBがSQLDBよりもはるかに高速である理由の詳細で具体的な理由はありますか?

    2. Flaskユーザー認証

    3. MongoDB $ acosh

    4. Redis DBのようなものはありますが、RAMサイズに制限はありませんか?