2014-04-10 24 views
11

Tôi đang cố gắng tìm tất cả các nút có nhiều mối quan hệ đến. Được cung cấp dữ liệu này:Tìm các nút neo4j có nhiều mối quan hệ đến

a-[has]->b 
a-[has]->c 
d-[has]->b 

Vì vậy, tôi đang tìm truy vấn trả về 'b', vì có nhiều truy vấn đến hơn.

Truy vấn này đã đóng. Nó trả về 'a' và 'b', bởi vì cả hai đều có 2 quan hệ:

match (n)--() 
with n,count(*) as rel_cnt 
where rel_cnt > 1 
return n; 

Tuy nhiên, truy vấn này (bổ sung '->') không trả về bất kỳ và tôi không biết tại sao :

match (n)-->() 
with n,count(*) as rel_cnt 
where rel_cnt > 1 
return n; 

Tôi có điều này sai không?

Trả lời

19

Tính năng này có phù hợp với bạn không?

MATCH()-[r:has]->(n) 
WITH n, count(r) as rel_cnt 
WHERE rel_cnt > 1 
RETURN n; 

Tôi giả định, có lẽ không chính xác, rằng 'có' là loại mối quan hệ thích hợp. Nếu không, hãy thử:

MATCH()-[r]->(n) 
WITH n, count(r) as rel_cnt 
WHERE rel_cnt > 1 
RETURN n; 
+0

Cảm ơn, cả truy vấn của bạn đều hoạt động và ban đầu. Nó chỉ ra tôi đã không tạo ra các nút một cách chính xác và tôi đã có 2 nút được đặt tên là a. Một sai lầm newbie tôi giả sử. – SteveS

Các vấn đề liên quan