Bagaimana untuk Mengisih Tatasusunan dalam Dokumen Terbenam dalam MongoDB?

Patricia Arquette
Lepaskan: 2024-11-07 08:01:02
asal
979 orang telah melayarinya

How to Sort Arrays within Embedded Documents in MongoDB?

Isih Tatasusunan dalam Dokumen Terbenam dalam MongoDB

Apabila bekerja dengan MongoDB, selalunya perlu mengisih tatasusunan yang terkandung dalam dokumen terbenam. Ini boleh menjadi tugas yang sukar, tetapi mujurlah terdapat beberapa kaedah yang tersedia.

Soalan ini berkisar tentang menyusun tatasusunan "skor" dalam rekod pelajar dalam susunan skor menurun. Penyelesaian yang dicadangkan bergantung pada penggunaan cangkerang mongo dan Rangka Kerja Pengagregatan, ciri baharu yang diperkenalkan dalam MongoDB 2.2.

Pertanyaan pengagregatan yang disediakan dalam jawapan menggunakan beberapa peringkat:

  1. $match: Peringkat ini menapis koleksi untuk dokumen yang diingini menggunakan kriteria padanan. Dalam kes ini, ia memilih dokumen dengan _id bersamaan dengan 1.
  2. $unwind: Peringkat ini menyahbina tatasusunan "skor" terbenam, mengubahnya menjadi aliran dokumen individu. Setiap dokumen mengandungi _id, nama dan skor tunggal pelajar.
  3. $match: Peringkat ini menapis dokumen yang tidak digulung berdasarkan medan "jenis", memilih hanya yang mempunyai "jenis" sama dengan "kerja rumah".
  4. $sort: Peringkat ini mengisih dokumen dalam tertib menurun bagi medan "skor" dalam dokumen terbenam "skor".

Hasilnya ialah satu set dokumen dengan _id, nama dan markah kerja rumah tertinggi untuk setiap pelajar. Adalah penting untuk ambil perhatian bahawa Rangka Kerja Pengagregatan membenarkan transformasi dan penapisan yang lebih kompleks, menjadikannya alat yang berkuasa untuk bekerja dengan tatasusunan terbenam dalam MongoDB.

Atas ialah kandungan terperinci Bagaimana untuk Mengisih Tatasusunan dalam Dokumen Terbenam dalam MongoDB?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!