firebaseでアンドロイドアプリを作ろうとしています。firebaseにstartAt()
を使って検索機能を使いたいです。しかし結果は私を混乱させます。Firebaseについての混乱startAt()
私はこのようなfirebaseのデータをいくつか持っています。
{
"siswa" : {
"100" : {
"id" : 100,
"nama" : "Sucipto"
},
"101" : {
"id" : 101,
"nama" : "Tomo"
},
"102" : {
"id" : 102,
"nama" : "Fitri"
},
"103" : {
"id" : 103,
"nama" : "Sumini"
},
"104" : {
"id" : 104,
"nama" : "Eko"
},
"106" : {
"id" : 106,
"nama" : "Sulastri"
}
}
}
私のサンプルクエリ
// Setup Firebase
final FirebaseDatabase database = FirebaseDatabase.getInstance();
// Firebase siswa ref
final DatabaseReference siswaRef = database.getReference("siswa");
// Query
Query suciptoQuery = siswaRef.orderByChild("nama").startAt("Sucipto");
結果:
01同上:私はD/Query Sucipto: Nama : Sucipto
D/Query Sucipto: Nama : Sulastri
D/Query Sucipto: Nama : Sumini
D/Query Sucipto: Nama : Tomo
は別のテストクエリ
Query suciptoQuery = siswaRef.orderByChild("nama").startAt("Su");
の検索結果を試します
別のクエリ:
Query suciptoQuery = siswaRef.orderByChild("nama").startAt("Tomo");
または
Query suciptoQuery = siswaRef.orderByChild("nama").startAt("To");
結果:
D/Query Sucipto: Nama : Tomo
私はSOにこのトピックについて検索していますが、それでもすべてのソリューションを持っていません。
"辞書的に大きい"という用語は、あなたが探している用語です – Tony
そうだと思います。 Firebaseのドキュメントを読んだ後、これを更新するのを忘れました。ありがとう@トニー:) –