4
votes

I have following cypher query which returns all (in and out) relationships of an specific node:

START s=node(1) MATCH s<-[r]->(t) RETURN type(r) as RelationshipType, .......

Now I want to find out the direction of each relationship. Is there an command like "RETURN RelationshipDirection(r)" ?? :)

Thanks.

2
you could use something like return length(s-[r]->t) which should be 0 if it is incoming to s and 1 if it is outgoing.Michael Hunger

2 Answers

7
votes

Per neo4j 2.0, you can use startnode(r)

See http://docs.neo4j.org/chunked/snapshot/query-functions-scalar.html#functions-startnode

STARTNODE returns the starting node of a relationship

So in your example you might find outgoing relations by startnode(r) = s

1
votes

Unfortunately, that's not possible right now using Cypher. Here is an issue for it. Please add any comments you might have.

Andrés