0

たとえば、mongo db に次のようなコレクションがあるとします。

{_id: "A", Value: "1"}
{_id: "B", Value: "2"}
{_id: "C", Value: "3"}
{_id: "D", Value: "4"}
{_id: "E", Value: "5"}
{_id: "F", Value: "6"}
{_id: "G", Value: "7"}
{_id: "H", Value: "8"}
{_id: "I", Value: "9"}

M (ID, LIMIT) という名前のメソッドがあります。このメソッドは、ドキュメント ID で始まる最後の LIMIT レコードを逆順で取得します。

メソッド M を実装するにはどうすればよいですか?

例 1:

M(F, 4) returns
{_id: "F", Value: "6"}
{_id: "E", Value: "5"}
{_id: "D", Value: "4"}
{_id: "C", Value: "3"}

例 2:

M(H, 2) returns
{_id: "H", Value: "8"}
{_id: "G", Value: "7"}

例 3:

M(G, 6) returns
{_id: "G", Value: "7"}
{_id: "F", Value: "6"}
{_id: "E", Value: "5"}
{_id: "D", Value: "4"}
{_id: "C", Value: "3"}
{_id: "B", Value: "2"}
4

1 に答える 1

0

_id降順で並べ替えながら、結果を次のようにフィルター処理する必要があります_id

var cursor = test.FindAs<BsonDocument>(Query.LTE("_id", ID));
cursor.SetSortOrder(SortBy.Descending("_id"));
cursor.SetLimit(LIMIT);
于 2013-02-20T19:44:54.033 に答える