0
、私はvalでコレクションをソートしていた場合:値が同じであれば、mongoDBはソート時にどのように値を並べ替えるのですか?例えば
`[{id: 1, val: 1}, {id: 2, val: 2} , {id: 3, val: 3}, {id: 4, val: 2}]
、など。どのようにそれは2のvalが最初に来るかを決定するのでしょうか?
、私はvalでコレクションをソートしていた場合:値が同じであれば、mongoDBはソート時にどのように値を並べ替えるのですか?例えば
`[{id: 1, val: 1}, {id: 2, val: 2} , {id: 3, val: 3}, {id: 4, val: 2}]
、など。どのようにそれは2のvalが最初に来るかを決定するのでしょうか?
クエリがインデックスからソートされた値を読み取っている場合、順序は、ドキュメントがインデックスに格納される方法(https://docs.mongodb.com/manual/reference/method/cursor.sort/#sort-and-index-use)から継承される可能性が高くなります。
たとえば、クエリがインデックス{ "val" : 1, "val2" : 1 }
から事前ソートされた結果を読み取っている場合、結果はフィールドval2でソートされる可能性があります。
ドキュメントがメモリ内でソートされている場合、結果はソート句で指定されたものを超える特定の順序を持つとは限りません。