【Flutter ✕ Firebase】 クエリ一覧
where (特定の条件で抽出)
基本構文
final firestore = FirebaseFirestore.instance;
await firestore.collection('users').where('name', isEqualTo: 'Terry').get();
演算子 | 意味 | 使い方 |
---|---|---|
isEqualTo | 〜と等しい | where('name', isEqualTo: 'Terry') |
isNotEqualTo | 〜と等しくない | where('name', isNotEqualTo: 'Terry') |
isLessThan | 〜より小さい | where('age', isLessThan: 20) |
isLessThanOrEqualTo | 〜以下 | where('age', isLessThanOrEqualTo: 20) |
isGreaterThan | 〜より大きい | where('age', isGreaterThan: 20) |
isGreaterThanOrEqualTo | 〜以上 | where('age', isGreaterThanOrEqualTo: 20) |
arrayContains | 配列内に右辺の要素を含む | where('hobbies', arrayContains: 'Mac') |
arrayContainsAny | 配列内に右辺の要素のいずれかを含む | where('hobbies', arrayContainsAny: ['デザイナー', 'マーケター']) |
whereIn | 右辺のいずれかが含まれている | where('name', whereIn: ['Mike', 'John']) |
whereNotIn | 右辺のいずれも含まれない | where('name', whereNotIn: [ |
isNull | 右辺がnullである・ない | .where('name', isNull: true) |
orderBy (特定の条件で並べ替え)
// 昇順
final firestore = FirebaseFirestore.instance;
await firestore.collection('users').orderBy('created_at', descending: false).get();
// 降順
final firestore = FirebaseFirestore.instance;
await firestore.collection('users').orderBy('created_at', descending: true).get();
start, end(取得範囲の指定)
final firestore = FirebaseFirestore.instance;
await firestore.collection('users')
.orderBy('createdAt', descending: true)
.startAt([Timestamp.fromDate(dateTime)])
.get();
endAt(特定条件に合うドキュメントまでを読み込む)
final firestore = FirebaseFirestore.instance;
await firestore.collection('users')
.orderBy('createdAt', descending: true)
.endAt([Timestamp.fromDate(dateTime)])
.get();
limit(取得数の制限)
final firestore = FirebaseFirestore.instance;
await firestore.collection('users').limit(20).get();
参考
https://firebase.google.com/docs/firestore/query-data/queries?hl=ja#dart
ディスカッション
コメント一覧
まだ、コメントがありません