"A"などの文字列を使用してデータベースを検索しようとしています。私はちょうどこのFirebaseチュートリアルCommon SQL Queries converted for the Firebase Database - The Firebase Database For SQL Developers #4を見ていたし、それは(特定の場所に)文字列のためのデータベースを検索するために、あなたが使用しなければならない、と説明している:Firebaseデータベース検索クエリ
firebase.database().ref.child("child_name_here")
.queryOrdered(byChild: "child_name_here")
.queryStarting(atValue: "value_here_uppercase")
.queryEnding(atValue: "value_here_uppercase\\uf8ff")
あなたは終了値としてで2 \\
を使用する必要があります。 1つを得るためのエスケープ文字\
。
Firebaseデータベースでこれを試しても、動作しません。
databaseReference.child("Schools")
.queryOrdered(byChild: "name")
.queryStarting(atValue: "A")
.queryEnding(atValue: "A\\uf8ff") ...
私はFirebaseからスナップショットを印刷するに行く
が、私は戻って取得:{
"Schools": {
"randomUID": {
"location" : "anyTown, anyState",
"name" : "anyName"
}
}
}
はここに私のクエリです:ここに私のデータベースです。
終了コード.queryEnding(atValue: "A\\uf8ff")
を取り除くと、Schools
ノードのすべての学校が返されます。
Stringを使用してFirebaseデータベースを検索するにはどうすればよいですか?
Firebaseデータベースクエリでは大文字と小文字が区別されます。 JSONのサンプルでは、「A」で始まる学校名はなく、「a」(小文字)で始まる学校名のみです。 –
あなたはこれを知っているかもしれませんが、わかりやすくするために、そのテクニックは、文字「A」で始まり、部分文字列ではない文字列*のみを検索します。 Firebaseは部分文字列を直接検索することはできませんので、他の自己作成メソッドを使用する必要があります。 – Jay