(City {name:gotham})<-[:LOCATED] -(Tower {name:abc})<-[:LOCATED]-(Bank:{name:CityBank})
(City {name:gotham})<-[:LOCATED]-(Cinema {name:MainHall })
(City {name:gotham})<-[:LOCATED]-(Bank {name:ComBank})
How can I find it in the Neo4j database (including CityBank and comBank) All the banks named Gotham? I tried the following pattern, and it returned all nodes located in City, named gotham (including Cinema)
MATCH (City(name:'Gotham'))<-- (Bank) RETURN Bank
MATCH (:City(name:'Gotham'))<--(bank:Bank) RETURN bank
It should work fine.
Completely wrong typing, should read (lone star indication, all relations of any type, path of any length):
MATCH (:City{ name:'Gotham'})<-[*]-(bank:Bank) RETURN bank
Better is:
MATCH (:City {name:'Gotham'})<-[:LOCATED*1..2]-(bank:Bank) RETURN bank
So it can only traverse the LOCATED relationship. You can adjust* 1..2( Match paths with a length of 1 to 2) to meet the path length requirement (for example, if you add a street or block node, you may need to match a path with a length of 3*1. )
Suppose there is a simple chart as follows,
(City {name:gotham})<-[:LOCATED]-(Tower {name:abc} )<-[:LOCATED]-(Bank:{name:CityBank})
(City {name:gotham})<-[:LOCATED]-(Cinema {name:MainHall})
(City {name:gotham})<-[:LOCATED]-(Bank {name:ComBank})
How can I find all banks named Gotham in the Neo4j database (including CityBank and comBank)? I tried the following pattern, and it returned all nodes located in City, named gotham (including Cinema)
MATCH (City(name:'Gotham'))<-- (Bank) RETURN Bank
Assuming you entered the query incorrectly, what does it not work?
MATCH (:City(name:'Gotham'))<--(bank:Bank) RETURN bank
It should work fine.
Completely wrong typing, should read (lone star indication, all relations of any type, path of any length):
MATCH (:City{ name:'Gotham'})<-[*]-(bank:Bank) RETURN bank
Better is:
MATCH (:City {name:'Gotham'})<-[:LOCATED*1..2]-(bank:Bank) RETURN bank
So it can only traverse the LOCATED relationship. You can adjust* 1..2( Match paths with length 1 to 2) to meet the path length requirement (for example, if you add a street or block node, you may need to match a path with a length of 3 * 1. )
< /p>