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

MongoDBを使用して、階層内のレコードの所有者を効率的に決定します

    決定するためにユーザー管理テーブルに対して結合する必要がある可能性のある値のセットからの値を持つ「列」に基づいてMongoDBからレコードを「選択」しようとしている場合、NoSQLはあなたに対して機能しています...

    ユーザーIDのリストが引き続き管理可能な場合は、where ownerId in (?,?,?,?,?...)を実行できます。 クエリの種類(最初にリストを決定した後):

    db.documents.find({owner:{$in: [1234, 2345, 4444, 77777, 99999]}})
    

    NoSQLの方法は、おそらく、ドキュメントにownerIdだけでなく、管理階層の完全なパスを含めることによって、物事を非正規化することです。

    {  _id: 'the document A',
       owner : 1234,
       managers: [ 2345, 4444, 77777, 99999 ]
    }
    

    もちろん、ユーザー階層が移動したときに更新する必要があります。




    1. OpsManagerでMongoDBを実行する

    2. MongoDB:サーバーに起動警告があります

    3. MongoDBで文字列を日付に変換する3つの方法

    4. 認証メカニズムSCRAM-SHA-1はサポートされていません