Setelah mengonstruksi kueri, Anda dapat menentukan sejumlah opsi pengambilan untuk mengontrol lebih lanjut hasil yang ditampilkan. Lihat kueri datastore untuk informasi selengkapnya tentang membuat struktur kueri untuk aplikasi Anda.
Mengambil satu entity
Untuk mengambil hanya satu entity yang cocok dengan kueri Anda, gunakan metode PreparedQuery.asSingleEntity()
:
Ini akan menampilkan hasil pertama yang ditemukan dalam indeks yang cocok dengan kueri.
(Jika ada lebih dari satu hasil yang cocok, TooManyResultsException
akan ditampilkan.)
Melakukan iterasi melalui hasil kueri
Saat melakukan iterasi hasil kueri menggunakan metode PreparedQuery.asIterable()
dan PreparedQuery.asIterator()
, Cloud Datastore mengambil hasilnya dalam batch. Secara default, setiap batch berisi 20 hasil, tetapi Anda dapat mengubah nilai ini menggunakan FetchOptions.chunkSize()
. Anda dapat terus melakukan iterasi melalui hasil kueri hingga semua hasil kueri ditampilkan atau waktu permintaan habis.
Mengambil properti yang dipilih dari entity
Untuk hanya mengambil properti entity yang dipilih, bukan seluruh entity, gunakan kueri proyeksi. Jenis kueri ini berjalan lebih cepat dan biayanya lebih murah dibandingkan kueri yang menampilkan entity lengkap.
Demikian pula, kueri khusus kunci menghemat waktu dan resource dengan hanya menampilkan kunci ke entity yang cocok, bukan entity lengkap. Untuk membuat jenis kueri ini, gunakan metode Query.setKeysOnly()
:
Menetapkan batas untuk kueri Anda
Anda dapat menentukan batas kueri untuk mengontrol jumlah maksimum hasil yang ditampilkan dalam satu batch. Contoh berikut mengambil lima orang tertinggi dari Cloud Datastore:
Apa langkah selanjutnya?
- Pelajari batasan umum untuk kueri di Cloud Datastore.
- Pelajari query cursor, yang memungkinkan aplikasi mengambil hasil kueri dalam batch yang mudah.
- Pahami konsistensi data dan cara kerja konsistensi data pada berbagai jenis kueri di Cloud Datastore.
- Pelajari sintaksis dasar dan struktur kueri untuk Cloud Datastore.