In the return part of your query, you define which parts of the pattern you are interested in. It can be nodes, relationships, or properties on these.
To return a node, list it in the return statemenet.
Graph
Query
start n=(2) return n
The node.
Result
+--------------------+ | n | +--------------------+ | Node[2]{name->"B"} | +--------------------+ 1 rows, 0 ms
To return a relationship, just include it in the return list.
Graph
Query
start n=(1) match (n)-[r:KNOWS]->(c) return r
The relationship.
Result
+--------------+ | r | +--------------+ | :KNOWS[0] {} | +--------------+ 1 rows, 1 ms
To return a property, use the dot separator, like this:
Graph
Query
start n=(1) return n.name
The the value of the property name.
Result
+--------+ | n.name | +--------+ | A | +--------+ 1 rows, 0 ms
To introduce a placeholder that is made up of characters that are outside of the english alphabet, you can use the ` to enclose the identifier, like this:
Graph
Query
start `This isn't a common identifier`=(1) return `This isn't a common identifier`.`<<!!__??>>`
The node indexed with name "A" is returned
Result
+-------------------------------------------+ | This isn't a common identifier.<<!!__??>> | +-------------------------------------------+ | Yes! | +-------------------------------------------+ 1 rows, 1 ms
If a property might or might not be there, you can select it optionally by adding a questionmark to the identifier, like this:
Graph
Query
start n=(1, 2) return n.age?
The age when the node has that property, or null if the property is not there.
Result
+--------+ | n.age | +--------+ | 55 | | <null> | +--------+ 2 rows, 0 ms
DISTINCT retrieves only unique rows depending on the columns that have been selected to output.
Graph
Query
start a=(1) match (a)-->(b) return distinct b
The node named B, but only once.
Result
+--------------------+ | b | +--------------------+ | Node[2]{name->"B"} | +--------------------+ 1 rows, 1 ms
Copyright © 2011 Neo Technology