😇

Flutter Firebase データの様々な取得方法

2022/06/25に公開

初めに

flutterでfirebaseのfirestoreからデータを取得する際の取得方法を一部記述します。

データの取得方法

前提のコード

  //Firestoreインスタンスの作成と代入 
  static final FirebaseFirestore _firestore = FirebaseFirestore.instance;

  //firebase上のコレクションへのアクセス(変数名を _users にしているが、自由に決める)
  static final CollectionReference _users = _firestore.collection('コレクション名');

これ以降のコードは _users で進めていきますが、上記の「コレクションへのアクセスの部分で決めた変数」に置き換えてください。

以後のコードに出てくる_userStreamも好きな変数名でOKです

全て取得

final Stream<QuerySnapshot> _userStream = _users.snapshots();

where: 指定の値のみを取得

例:nameの値を指定して取得する場合

final Stream<QuerySnapshot> _userStream = _users.where('name', isEqualTo: '指定の値').snapshots();

where: 指定の数値より小さい値のデータのみを取得

例:ageが25より小さい値のデータだけを取得

final Stream<QuerySnapshot> _userStream = _users.where('age', isLessThan: 25).snapshots();

limit: 指定の個数だけ取得(登録の新しい順から)

例:登録が新しい順に2つだけデータを取得

final Stream<QuerySnapshot> _userStream = _users.limit(2).snapshots();

orderBy(並び替え): 昇順に並び替えて取得

数値の小さい順に上から並べる
文字列だったとしても数値が入っていれば適応可能

final Stream<QuerySnapshot> _userStream = _users.orderBy('age').snapshots();

orderBy(並び替え): 降順に並び替えて取得

数値の大きい順に上から並べる
文字列だったとしても数値が入っていれば適応可能

final Stream<QuerySnapshot> _userStream = _users.orderBy('age', descending: true).snapshots();

終わりに

Twitterでも情報発信しておりますので、ぜひフォローお願い致します!
https://mobile.twitter.com/tatsuki_kt

Discussion