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

MongoDBで重複レコードを検索する

    nameで集計を使用する nameを取得します count > 1を使用 :

    db.collection.aggregate([
        {"$group" : { "_id": "$name", "count": { "$sum": 1 } } },
        {"$match": {"_id" :{ "$ne" : null } , "count" : {"$gt": 1} } }, 
        {"$project": {"name" : "$_id", "_id" : 0} }
    ]);
    

    結果を重複の多いものから少ないものの順に並べ替えるには:

    db.collection.aggregate([
        {"$group" : { "_id": "$name", "count": { "$sum": 1 } } },
        {"$match": {"_id" :{ "$ne" : null } , "count" : {"$gt": 1} } }, 
        {"$sort": {"count" : -1} },
        {"$project": {"name" : "$_id", "_id" : 0} }     
    ]);
    

    「name」以外の列名で使用するには、「 $ name」を変更します "から"$ column_name "



    1. MongoDBでワイルドカードテキストインデックスを作成する

    2. インスタントメッセージングシステム用にredispub/ subを設計するにはどうすればよいですか?

    3. Laravel + predis+Redisクラスター-移動/127.0.0.1:6379への接続なし

    4. セロリエラー:result.getがタイムアウトします