/ / Cypehr Query z WHERE… AND nie działa poprzez osadzone python bind - python-2.7, neo4j, cypher

Cypehr Query z WHERE… AND nie działa poprzez osadzone python bind - python-2.7, neo4j, cypher

Pracuję nad prototypem, w którym zapisałem wszystkie moje szczegóły filmu zapisane na neo4j. Używam Pythona jako mojego języka programowania.

Teraz chcę dowiedzieć się, które filmy oceniłem na określonym poziomie (powiedzmy 10.0). W tym celu napisałem następującą kwerendę Cypher:

START me=node(1)
MATCH me-[r:likes]-> movies
WHERE has(r.Ratings) and r.Ratings = "10.0"
RETURN movies

Działa to dobrze na webadminie neo4j. Jednak gdy uruchamiam to samo za pomocą pythona:

myMovies = db.query("START me=node({id}) MATCH me-[r:likes]-> movies WHERE has(r.Ratings) and r.Ratings = "10.0" RETURN movies",id=user["nodeID"])

Pojawia się następujący błąd:

Traceback (most recent call last):
File "GraphTest.py", line 228, in <module>
test.findTaste("Paritosh Kumar")
File "GraphTest.py", line 31, in findTaste
taste = self.BuildTasteForUser(user)
File "GraphTest.py", line 52, in BuildTasteForUser
myMovies = db.query("START me=node({id}) MATCH me-[r:likes]-> movies WHERE has(r.Ratings) and r.Ratings = "10.0" RETURN movies",id=user["nodeID"])
File "/usr/local/lib/python2.7/dist-packages/neo4j/__init__.py", line 155, in query
return self._cypher_engine.execute(query, **params)
File "/usr/local/lib/python2.7/dist-packages/neo4j/cypher.py", line 31, in execute
return ExecutionResult(self._engine.execute(query,to_java(params)))
File "/usr/local/lib/python2.7/dist-packages/neo4j/_backend.py", line 156, in decorator
return fn(*args, **kwargs)
jpype._jexception.CypherExceptionPyRaisable: unknown function
"START me=node({id}) MATCH me-[r:likes]-> movies WHERE has(r.Ratings) and r.Ratings = "10.0" RETURN movies"

Jestem nowy dla Cyphera i neo4j jako takiego i nie jestem pewien, dlaczego tak się dzieje. Czy ktoś mógłby mi pomóc?

Regds, Paritosh

Odpowiedzi:

0 dla odpowiedzi № 1

Użyj !(15.11.9) operator:

START me=node(1)
MATCH me-[r:likes]-> movies
WHERE r.Ratings! = "10.0"
RETURN movies