Dokumen ini membahas dasar-dasar pengambilan data database, cara data diurutkan, dan cara melakukan kueri sederhana pada data. Pengambilan data di Admin SDK diterapkan dengan cara yang sedikit berbeda di bahasa pemrograman yang berbeda. Show
MemulaiPerhatikan kembali contoh blogging dari artikel sebelumnya untuk memahami cara membaca data dari database Firebase. Harap diingat bahwa postingan blog dalam contoh aplikasi disimpan di URL database https://docs-examples.firebaseio.com/server/saving-data/fireblog/posts.json. Untuk membaca data postingan, Anda dapat melakukan hal berikut:
Jika Anda menjalankan kode di atas, Anda akan melihat objek yang berisi semua postingan Anda yang dibuat lognya ke konsol. Pada kasus Node.js dan Java, fungsi pemroses ini akan dipanggil setiap kali data baru ditambahkan ke referensi database dan Anda tidak perlu menulis kode tambahan untuk menjalankannya. Di Java dan Node.js, fungsi callback menerima Perlu diperhatikan bahwa kita menggunakan jenis peristiwa Jenis Peristiwa Baca di Java dan Node.jsNilai Peristiwa Child Added (Turunan Ditambahkan) Peristiwa Jika Anda hanya ingin mengambil data di setiap postingan baru yang ditambahkan ke aplikasi blogging, Anda dapat menggunakan
Dalam contoh ini, snapshot akan berisi sebuah objek dengan postingan blog
individu. Karena SDK mengonversi postingan menjadi objek dengan mengambil nilainya, Anda akan memiliki akses ke penulis dan properti judul postingan dengan memanggil Child Changed (Turunan Diubah) Peristiwa Anda bisa menggunakan
Child Removed (Turunan Dihapus) Peristiwa Dalam contoh blog, Anda dapat menggunakan
Child Moved (Turunan Dipindahkan) Peristiwa Jaminan PeristiwaDatabase Firebase membuat beberapa jaminan penting mengenai peristiwa:
Karena peristiwa nilai selalu dipicu terakhir, contoh berikut akan selalu bekerja:
Melepaskan CallbackCallback dihapus dengan menetapkan tipe peristiwa dan fungsi callback yang akan dihapus, seperti berikut ini:
Jika Anda meneruskan konteks cakupan ke
Jika ingin menghapus semua callback di suatu lokasi, Anda bisa melakukan hal berikut:
Membaca Data SekaliDalam beberapa kasus, mungkin akan lebih baik jika callback dipanggil sekali lalu segera dihapus. Kami telah membuat fungsi bantuan untuk memudahkan hal ini:
Memproses Kueri Data Dengan kueri database Firebase, Anda bisa mengambil data secara selektif berdasarkan berbagai macam faktor.
Untuk membuat kueri dalam database, mulailah dengan menentukan metode pengurutan data yang Anda inginkan menggunakan salah satu fungsi pengurutan: Karena kami semua di Firebase suka dinosaurus, kami akan menggunakan cuplikan dari contoh database fakta dinosaurus untuk menunjukkan bagaimana Anda bisa melakukan kueri data di database Firebase: { "lambeosaurus": { "height" : 2.1, "length" : 12.5, "weight": 5000 }, "stegosaurus": { "height" : 4, "length" : 9, "weight" : 2500 } } Anda dapat mengurutkan data dengan tiga cara: berdasarkan kunci turunan, berdasarkan kunci, atau berdasarkan nilai. Kueri database dasar dimulai dengan salah satu fungsi pengurutan yang masing-masing akan dijelaskan di bawah ini. Mengurutkan berdasarkan kunci turunan yang telah ditentukanAnda dapat mengurutkan node berdasarkan kunci turunan umum dengan meneruskan kunci tersebut ke
Setiap node yang tidak memiliki kunci turunan yang sesuai dengan kueri akan diurutkan dengan nilai Kueri juga bisa diurutkan dengan turunan bertingkat yang dalam, bukan oleh turunan yang hanya satu level ke bawah. Hal ini berguna jika Anda memiliki data bertingkat yang dalam seperti ini: { "lambeosaurus": { "dimensions": { "height" : 2.1, "length" : 12.5, "weight": 5000 } }, "stegosaurus": { "dimensions": { "height" : 4, "length" : 9, "weight" : 2500 } } } Untuk menerapkan kueri terkait tinggi, kita dapat menggunakan jalur lengkap ke objek alih-alih kunci tunggal:
Kueri hanya bisa menerapkan pengurutan dengan satu kunci pada satu waktu. Memanggil Mengurutkan berdasarkan kunci Anda juga dapat mengurutkan node berdasarkan kuncinya menggunakan metode
Mengurutkan berdasarkan nilaiAnda dapat mengurutkan node berdasarkan nilai kunci turunannya menggunakan metode
{ "scores": { "bruhathkayosaurus" : 55, "lambeosaurus" : 21, "linhenykus" : 80, "pterodactyl" : 93, "stegosaurus" : 5, "triceratops" : 22 } } Untuk mengurutkan dinosaurus berdasarkan skor yang diraihnya, Anda bisa membuat kueri berikut:
Baca bagian Metode Pengurutan Data untuk mendapatkan penjelasan mengenai pengurutan nilai Kueri KompleksSetelah memahami pengurutan data, Anda dapat menggunakan metode batas atau rentang yang dijelaskan di bawah ini untuk membuat kueri yang lebih kompleks. Kueri Batas Kueri Dengan menggunakan database fakta dinosaurus dan
Callback Demikian pula, Anda bisa menemukan dua dinosaurus terpendek dengan menggunakan
Callback Anda juga dapat melakukan kueri batas dengan
Kueri Rentang Anda dapat menggunakan
Anda dapat menggunakan
Anda dapat menggabungkan
Metode
Kueri rentang juga berguna ketika Anda perlu memberi nomor pada data. Menggabungkan semuanyaAnda bisa menggabungkan semua teknik ini untuk membuat kueri yang kompleks. Misalnya, Anda bisa menemukan nama dinosaurus yang lebih pendek dari Stegosaurus:
Metode Pengurutan DataBagian ini menjelaskan bagaimana data Anda diurutkan ketika menggunakan 4 fungsi pengurutan yang berbeda. orderByChildJika Anda menggunakan
orderByKeyData yang diurutkan menggunakan
orderByValueKetika menggunakan |