PHPz2017-05-02 09:24:41
簡単な文章を使うのは難しいですが、少なくとも私の範囲では現実的ではありません
いくつかアイデアを提供できます:
db.coll.find({},{"データを 1 列だけ表示するか、数列だけ表示する。少ないほど良い。データ量が多いと使いにくくなる後で並べ替え操作が必要になるためです。" })$natual:1 並べ替え後、値をカーソルに代入し、forEach() で 2 つの変数を使用して、一致条件が満たされるまで現在のデータと前のデータを保存します。が成功すると、前後のデータと現在の 3 つのデータを返すことができます。
他にももっと素晴らしい内部メソッドがあるかもしれません。Banzhuan へようこそ
もう 1 つの方法は、上記に基づいて $natual:1 のデータに順序付けられた数値または文字の列を定期的に追加し、それを別の新しいテーブルに保存し、その ID に基づいてクエリを実行することです。新しいテーブルに一致するデータが最終的に検索され、KEY: value 列を通じて順序どおりに追加されます。その前後のデータが再度クエリされます。