cari

Rumah  >  Soal Jawab  >  teks badan

mongodb查询语句怎么合并查询结果?

想用一条语句查询三条记录,包括当前记录、上一条、下一条,怎么实现?
只知道当前记录的_id,需要按另外一个时间字段排序取相临的记录。

迷茫迷茫2814 hari yang lalu637

membalas semua(1)saya akan balas

  • PHPz

    PHPz2017-05-02 09:24:41

    Sukar untuk menggunakan ayat mudah, sekurang-kurangnya skop saya tidak berasa realistik
    Saya boleh memberikan beberapa idea:

    1. Gunakan db.coll.find({},{"Hanya paparkan satu lajur data, atau beberapa lajur, semakin sedikit semakin baik. Ia akan menjadi sukar untuk digunakan jika jumlah data adalah besar, kerana operasi pengisihan diperlukan kemudian"}) Selepas $natual:1 diisih, ia diberikan kepada kursor, dan kemudian dua pembolehubah digunakan dalam forEach() untuk menyimpan sekeping data semasa dan sekeping data sebelumnya sehingga keadaan sepadan berjaya, dan kemudian tiga keping data sebelum dan selepas dan sekeping data semasa boleh dikembalikan.
      Mungkin ada kaedah dalaman lain yang lebih berkuasa, selamat datang ke forum

    2. Kaedah lain ialah menambah lajur nombor tersusun atau aksara berdasarkan data daripada $natual:1 secara berkala, kemudian simpan ke jadual baharu yang lain, dan kemudian tanya jadual baharu berdasarkan ID baharu jadual. Data yang sepadan akhirnya ditambah dengan cara yang teratur melalui lajur yang ditemui KUNCI: nilai data sebelum dan selepas disoal semula.

    balas
    0
  • Batalbalas