You can create a duplicate with a map in Neo4j 2.1 (not sure before)
MATCH (n:Node {name: 'abc'}) WITH n AS map CREATE (copy:Node) SET copy=map RETURN copy
If you have a restriction on the uniqueness of any of the properties, it will not be executed, although with a message ...
The node already exists with label XX and the property "property" = [value]
This can be avoided by providing a new value for a property with a unique constraint, creating a new node and copying other non-unique property values ββfrom the original node.
MATCH (n:Node {name: 'abc'}) WITH n as map CREATE (copy:Node {name: 'def'}) SET copy.property1 = map.property1 , copy.property2 = map.property2 RETURN copy
source share