01hana
@01hana

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Flutter、FireBaseを使用した複合クエリの指定方法について

解決したいこと

FlutterおよびFireBaseを使用し、掲示板アプリを作成していいます。
掲載終了時刻が現在時刻より過去の掲示板を取得し、
検索画面より入力した、キーワードをFireBaseにて掲示板名を前方一致で検索が行いたいのですが、
希望のデータが取得できません。
エラーは発生しておりませんが、下記の通り記述した場合、取得結果が0件となります。

なおFireBaseで複合クエリのインデックス登録は完了しておりますが、
FireBaseでは、where()メソッドとstartAt()メソッド、endAt()メソッドは併用できないのでしょうか?

検索処理

FirebaseFirestore.instance
        .collection('boards')
        .orderBy('closeTime', descending: true)
        .where('closeTime', isGreaterThan: now)
        .orderBy('title')
        .startAt([title]).endAt(['$title\uf8ff'])
        .snapshots();

単一クエリで確認した際

なお、下記の条件では検索を行えております。

~終了時刻で絞り込み~

FirebaseFirestore.instance
        .collection('boards')
        .orderBy('closeTime', descending: true)
        .where('closeTime', isGreaterThan: now)
        .snapshots();

~タイトル(前方一致)で絞り込み~

FirebaseFirestore.instance
        .collection('boards')
        .orderBy('title')
        .startAt([title]).endAt(['$title\uf8ff'])
        .snapshots();
0

1Answer

Your answer might help someone💌