(Optional) client used to connect to datastore. If not supplied, uses the query's value.
eventual
bool
(Optional) Defaults to strongly consistent (False). Setting True will use eventual consistency, but cannot be used inside a transaction or with read_time, otherwise will raise ValueError.
retry
google.api_core.retry.Retry
A retry object used to retry requests. IfNoneis specified, requests will be retried using a default configuration.
timeout
float
Time, in seconds, to wait for the request to complete. Note that ifretryis specified, the timeout applies to each individual attempt.
read_time
datetime
(Optional) use read_time read consistency, cannot be used inside a transaction or with eventual consistency, or will raise ValueError.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Class Query (2.21.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.21.0 (latest)](/python/docs/reference/datastore/latest/google.cloud.datastore.query.Query)\n- [2.20.2](/python/docs/reference/datastore/2.20.2/google.cloud.datastore.query.Query)\n- [2.19.0](/python/docs/reference/datastore/2.19.0/google.cloud.datastore.query.Query)\n- [2.18.0](/python/docs/reference/datastore/2.18.0/google.cloud.datastore.query.Query)\n- [2.17.0](/python/docs/reference/datastore/2.17.0/google.cloud.datastore.query.Query)\n- [2.16.1](/python/docs/reference/datastore/2.16.1/google.cloud.datastore.query.Query)\n- [2.15.2](/python/docs/reference/datastore/2.15.2/google.cloud.datastore.query.Query)\n- [2.14.0](/python/docs/reference/datastore/2.14.0/google.cloud.datastore.query.Query)\n- [2.13.2](/python/docs/reference/datastore/2.13.2/google.cloud.datastore.query.Query)\n- [2.12.0](/python/docs/reference/datastore/2.12.0/google.cloud.datastore.query.Query)\n- [2.11.1](/python/docs/reference/datastore/2.11.1/google.cloud.datastore.query.Query)\n- [2.10.0](/python/docs/reference/datastore/2.10.0/google.cloud.datastore.query.Query)\n- [2.9.0](/python/docs/reference/datastore/2.9.0/google.cloud.datastore.query.Query)\n- [2.8.3](/python/docs/reference/datastore/2.8.3/google.cloud.datastore.query.Query)\n- [2.7.2](/python/docs/reference/datastore/2.7.2/google.cloud.datastore.query.Query)\n- [2.6.2](/python/docs/reference/datastore/2.6.2/google.cloud.datastore.query.Query)\n- [2.5.1](/python/docs/reference/datastore/2.5.1/google.cloud.datastore.query.Query)\n- [2.4.0](/python/docs/reference/datastore/2.4.0/google.cloud.datastore.query.Query)\n- [2.3.0](/python/docs/reference/datastore/2.3.0/google.cloud.datastore.query.Query)\n- [2.2.0](/python/docs/reference/datastore/2.2.0/google.cloud.datastore.query.Query)\n- [2.1.6](/python/docs/reference/datastore/2.1.6/google.cloud.datastore.query.Query)\n- [2.0.1](/python/docs/reference/datastore/2.0.1/google.cloud.datastore.query.Query)\n- [1.15.5](/python/docs/reference/datastore/1.15.5/google.cloud.datastore.query.Query)\n- [1.14.0](/python/docs/reference/datastore/1.14.0/google.cloud.datastore.query.Query)\n- [1.13.2](/python/docs/reference/datastore/1.13.2/google.cloud.datastore.query.Query)\n- [1.12.0](/python/docs/reference/datastore/1.12.0/google.cloud.datastore.query.Query)\n- [1.11.0](/python/docs/reference/datastore/1.11.0/google.cloud.datastore.query.Query)\n- [1.10.0](/python/docs/reference/datastore/1.10.0/google.cloud.datastore.query.Query)\n- [1.9.0](/python/docs/reference/datastore/1.9.0/google.cloud.datastore.query.Query) \n\n Query(\n client,\n kind=None,\n project=None,\n namespace=None,\n ancestor=None,\n filters=(),\n projection=(),\n order=(),\n distinct_on=(),\n explain_options=None,\n )\n\nA Query against the Cloud Datastore.\n\nThis class serves as an abstraction for creating a query over data\nstored in the Cloud Datastore.\n\nProperties\n----------\n\n### ancestor\n\nThe ancestor key for the query.\n\n### distinct_on\n\nNames of fields used to group query results.\n\n### filters\n\nFilters set on the query.\n\n### kind\n\nGet the Kind of the Query.\n\n### namespace\n\nThis query's namespace\n\n### order\n\nNames of fields used to sort query results.\n\n### project\n\nGet the project for this Query.\n\n### projection\n\nFields names returned by the query.\n\nMethods\n-------\n\n### add_filter\n\n add_filter(property_name=None, operator=None, value=None, *, filter=None)\n\nFilter the query based on a property name, operator and a value.\n\nExpressions take the form of::\n\n.add_filter(\nfilter=PropertyFilter('\n\n\nwhere property is a property stored on the entity in the datastore\nand operator is one of `OPERATORS`\n(ie, `=`, `\u003c`, `\u003c=`, `\u003e`, `\u003e=`, `!=`, `IN`, `NOT_IN`):\n\nBoth AND and OR operations are supported by passing in a `CompositeFilter` object to the `filter` parameter::\n\n.add_filter(\nfilter=And(\n\\[\nPropertyFilter('\n\n\n ]\n )\n\n)\n\n.add_filter(\nfilter=Or(\n\\[\nPropertyFilter('\n\n\n.. testsetup:: query-filter \n\n import uuid\n\n from google.cloud import https://cloud.google.com/python/docs/reference/datastore/latest/\n from google.cloud.datastore.query import https://cloud.google.com/python/docs/reference/datastore/latest/google.cloud.datastore.query.PropertyFilter.html\n\n client = https://cloud.google.com/python/docs/reference/datastore/latest/.https://cloud.google.com/python/docs/reference/datastore/latest/google.cloud.datastore.client.Client.html()\n\n.. doctest:: query-filter \n\n \u003e\u003e\u003e query = client.query(kind='Person')\n \u003e\u003e\u003e query = query.add_filter(filter=PropertyFilter('name', '=', 'James'))\n \u003e\u003e\u003e query = query.add_filter(filter=PropertyFilter('age', '\u003e', 50))\n\n### fetch\n\n fetch(\n limit=None,\n offset=0,\n start_cursor=None,\n end_cursor=None,\n client=None,\n eventual=False,\n retry=None,\n timeout=None,\n read_time=None,\n )\n\nExecute the Query; return an iterator for the matching entities.\n\nFor example:\n\n.. testsetup:: query-fetch \n\n import uuid\n\n from google.cloud import https://cloud.google.com/python/docs/reference/datastore/latest/\n from google.cloud.datastore.query import https://cloud.google.com/python/docs/reference/datastore/latest/google.cloud.datastore.query.PropertyFilter.html\n unique = str(uuid.uuid4())[0:8]\n client = https://cloud.google.com/python/docs/reference/datastore/latest/.https://cloud.google.com/python/docs/reference/datastore/latest/google.cloud.datastore.client.Client.html(namespace='ns{}'.format(unique))\n\n.. doctest:: query-fetch \n\n \u003e\u003e\u003e andy = datastore.Entity(client.key('Person', 1234))\n \u003e\u003e\u003e andy['name'] = 'Andy'\n \u003e\u003e\u003e sally = datastore.Entity(client.key('Person', 2345))\n \u003e\u003e\u003e sally['name'] = 'Sally'\n \u003e\u003e\u003e bobby = datastore.Entity(client.key('Person', 3456))\n \u003e\u003e\u003e bobby['name'] = 'Bobby'\n \u003e\u003e\u003e client.put_multi([andy, sally, bobby])\n \u003e\u003e\u003e query = client.query(kind='Person')\n \u003e\u003e\u003e result = list(query.add_filter(filter=PropertyFilter('name', '=', 'Sally')).fetch())\n \u003e\u003e\u003e result\n [\u003cEntity('Person', 2345) {'name': 'Sally'}\u003e]\n\n.. testcleanup:: query-fetch \n\n client.delete(andy.key)\n client.delete(sally.key)\n client.delete(bobby.key)\n\n### key_filter\n\n key_filter(key, operator=\"=\")\n\nFilter on a key.\n\n### keys_only\n\n keys_only()\n\nSet the projection to include only keys."]]