Dopo aver creato una query, puoi specificare una serie di opzioni di recupero per controllare ulteriormente i risultati che restituisce. Consulta le query del datastore per ulteriori informazioni su come strutturare le query per la tua app.
Recupero di una singola entità
Per recuperare una singola entità che corrisponde alla tua query, utilizza il metodo Query.get()
(o GqlQuery.get()
):
q = Person.all()
q.filter("last_name =", target_last_name)
result = q.get()
Restituisce il primo risultato trovato nell'indice che corrisponde alla query.
Eseguire l'iterazione dei risultati della query
Durante l'iterazione dei risultati di una query utilizzando il metodo run()
di un oggetto Query
o GqlQuery
, Cloud Datastore recupera i risultati in batch. Per impostazione predefinita, ogni batch contiene 20 risultati, ma puoi modificare questo valore utilizzando il parametro batch_size
del metodo. Puoi continuare a ripetere i risultati della query finché non vengono restituiti tutti o fino a quando la richiesta scade.
Recupero delle proprietà selezionate da un'entità
Per recuperare solo le proprietà selezionate di un'entità anziché l'intera entità, utilizza una query di proiezione. Questo tipo di query viene eseguito più velocemente e costa meno di una query che restituisce entità complete.
Analogamente, una query basata solo su chiavi consente di risparmiare tempo e risorse restituendo solo le chiavi alle entità corrispondenti, anziché alle entità complete. Per creare questo tipo di query, imposta keys_only=True
quando crei l'oggetto query:
q = Person.all(keys_only=True)
Impostare un limite per la query
Puoi specificare un limite per la query per controllare il numero massimo di risultati restituiti in un singolo batch. L'esempio seguente recupera le cinque persone più alte da Cloud Datastore:
q = Person.all()
q.order("-height")
for p in q.run(limit=5):
print "%s %s, %d inches tall" % (p.first_name, p.last_name, p.height)
Che cosa succede dopo?
- Scopri le limitazioni comuni per le query su Cloud Datastore.
- Scopri di più sui cursori di query, che consentono a un'applicazione di recuperare i risultati di una query in comodi batch.
- Comprendi la coerenza dei dati e il funzionamento della coerenza dei dati con diversi tipi di query su Cloud Datastore.
- Scopri la sintassi e la struttura di base delle query per Cloud Datastore.