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

Mongodbで、すべてのドキュメントが値に対して一意であるかどうかを確認するにはどうすればよいですか?

    これを試して、簡単なmap-reduceクエリ を使用してください 同じ名前のドキュメントの数を検索し、それらがすべて異なる場合はtrueを返します:

    function allDifferent() {
        var m = function() { emit(this.name, 1); }
        var r = function(key, emits) {
            var n = 0; emits.forEach(function(v) { n += v; }); return n;
        }
        var result = db.mycol.mapReduce(m, r, { out: "namecounts" });
        var allDifferent= (db.namecounts.count( { value: { $gt: 1 } } ) == 0)
        db.namecounts.drop();
        return allDifferent;
    }
    



    1. RedisでのSCANとKEYSのパフォーマンス

    2. すべてのクラスに実装するBsonIgnoreExtraElements

    3. セッションの期限切れベースのredisを処理する方法は?

    4. Microsoft.Extensions.Caching.Redisはdb0とは異なるデータベースを選択します