私はこの問題を理解しようとするのに苦労しています。
基本的に、一致したすべてのレコードを次のような番号で更新するコレクション レベルの更新を発行しようとしています。
# I actually am using PHP driver but using the console has the same result
db.my_collection.update( {si: '647522529'}, {$set: {cl:'2'}} );
上記は、si='647522529' であるすべてのレコードを検索し、cl='2' を更新する必要があります。
問題は、上記のコマンドがエラーや警告を表示しないため、適切に実行されたように見えますが、「cl」キーで個別のコマンドを実行すると、さまざまな結果が得られることです (2/1):
> db.runCommand( { distinct: 'my_collection', key: 'cl', query: { si: '647522529' } } )
{
"values" : [
"2",
"1"
],
"stats" : {
"n" : 113,
"nscanned" : 113,
"nscannedObjects" : 113,
"timems" : 1,
"cursor" : "BtreeCursor si_1"
},
"ok" : 1
}
私は何か間違ったことをしていますか?データベースの再インデックスを試みましたが、効果もありませんでした。
どんな助けでも大歓迎です!