ho qualche difficoltà con la py2neo trovare e find_one (http://py2neo.org/2.0/essentials.html)py2neo: Graph.find_one con chiave multipla/valori
Quello che voglio in Cypher è:
MATCH (p:Person) WHERE p.name='Alice' AND p.age=22 RETURN p
Say, dove ci sono più di una chiave/set di valori (ad esempio se ci sono più di una 'Alice' nel grafico).
mio problema è che non so cosa regalare graph.find_one, un codice di lavoro è:
graph.find_one('Person', 'name', 'Alice')
Quello che vorrei è qualcosa di simile (Questo non funziona!):
Una possibile soluzione (cattiva) sarebbe quella di creare un oggetto graph.find, quindi eseguire il loop delle proprietà dei risultati e cercare l'età, ma questa soluzione non mi piace.
Bonus: Sarebbe possibile con graf.find fare qualcosa come età> 25?
EDIT: "soluzione" Nuovo
find_person = "MATCH (p: Person) DOVE p.name = {N} e p.age = {A} RITORNO p"
>>> tx = graph.cypher.begin()
>>> tx.append(find_person, {'N': 'Alice', 'A': 22})
>>> res = tx.process()
>>> print(res[0][0][0])
(n423:Person {age:22,name:"Lisa"})
Quello che non mi piace di questo è che manca la nota-oggetto, (e io non comprendere appieno il RecordListList, e come navigare è ben segnalato)
Grazie per la risposta .. :-) Il problema con t la soluzione di cappello è che è davvero irradiante al passato nei parametri. Ho apportato una modifica al post, con un'idea leggermente migliore, ma ancora non ancora presente. –
@ThomasRepsdorph, ho aggiornato la mia risposta per spiegare come passare i parametri, questo è essenzialmente ciò che dovrebbe essere 'find', si potrebbe inviare una richiesta di pull una volta che funziona. – elyase
Sembra divertente, ci proverò .. MrGreen E grazie per il tuo aiuto. –