Query(
parent,
projection=None,
field_filters=(),
orders=(),
limit=None,
limit_to_last=False,
offset=None,
start_at=None,
end_at=None,
all_descendants=False,
recursive=False,
)
Represents a query to the Firestore API.
Instances of this class are considered immutable: all methods that would modify an instance instead return a new instance.
Parameters | |
---|---|
Name | Description |
parent |
CollectionReference
The collection that this query applies to. |
projection |
Optional[Projection]
A projection of document fields to limit the query results to. |
field_filters |
Optional[Tuple[FieldFilter, ...]]
The filters to be applied in the query. |
orders |
Optional[Tuple[Order, ...]]
The "order by" entries to use in the query. |
limit |
Optional[int]
The maximum number of documents the query is allowed to return. |
offset |
Optional[int]
The number of results to skip. |
start_at |
Optional[Tuple[dict, bool]]
Two-tuple of : * a mapping of fields. Any field that is present in this mapping must also be present in |
end_at |
Optional[Tuple[dict, bool]]
Two-tuple of: * a mapping of fields. Any field that is present in this mapping must also be present in |
all_descendants |
Optional[bool]
When false, selects only collections that are immediate children of the |
Methods
get
get(transaction=None, retry: google.api_core.retry.Retry = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None)
Read the documents in the collection that match this query.
This sends a RunQuery
RPC and returns a list of documents
returned in the stream of RunQueryResponse
messages.
Parameters | |
---|---|
Name | Description |
retry |
google.api_core.retry.Retry
Designation of what errors, if any, should be retried. Defaults to a system-specified policy. |
timeout |
float
The timeout for this request. Defaults to a system-specified value. |
Returns | |
---|---|
Type | Description |
list | The documents in the collection that match this query. |
on_snapshot
on_snapshot(callback: Callable)
Monitor the documents in this collection that match this query.
This starts a watch on this query using a background thread. The provided callback is run on the snapshot of the documents.
Parameter | |
---|---|
Name | Description |
callback |
Callable[[QuerySnapshot], NoneType] Example: .. code-block:: python from google.cloud import firestore_v1 db = firestore_v1.Client() query_ref = db.collection(u'users').where("user", "==", u'Ada') def on_snapshot(docs, changes, read_time): for doc in docs: print(u'{} => {}'.format(doc.id, doc.to_dict())) # Watch this query query_watch = query_ref.on_snapshot(on_snapshot) # Terminate this watch query_watch.unsubscribe()
a callback to run when a change occurs. |
stream
stream(transaction=None, retry: google.api_core.retry.Retry = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None)
Read the documents in the collection that match this query.
This sends a RunQuery
RPC and then returns an iterator which
consumes each document returned in the stream of RunQueryResponse
messages.
Parameters | |
---|---|
Name | Description |
retry |
google.api_core.retry.Retry
Designation of what errors, if any, should be retried. Defaults to a system-specified policy. |
timeout |
float :Yields: DocumentSnapshot -- The next document that fulfills the query.
The timeout for this request. Defaults to a system-specified value. |