2013-01-17 26 views
7

Tôi đang khám phá mô hình dữ liệu biểu đồ mới trong Neo4j và tôi đã tự hỏi cách liệt kê tất cả các thuộc tính nút có thể nhưng không phải giá trị của chúng nếu có thể.Khám phá các thuộc tính nút trong neo4j grap db

Đối với các mối quan hệ, tôi thấy rất tiện dụng generic truy vấn cypher này:

start n=node(*) 
match n-[r]-m 
return distinct type(r) 

mà trả về một danh sách hữu ích của tài sản mà bạn có thể bắt đầu sử dụng để truy vấn cụ thể hơn là đồ thị:

==> +------------+ 
==> | type(r) | 
==> +------------+ 
==> | "RATED" | 
==> | "FRIEND" | 
==> | "DIRECTED" | 
==> | "ACTS_IN" | 
==> +------------+ 
==> 4 rows 
==> 0 ms 
==> 

Có bất kỳ chức năng/biểu thức cho phép để làm điều này nhưng cho các thuộc tính nút?

Cảm ơn

+1

tôi không nghĩ như vậy. chỉ liệt kê toàn bộ nút/rel theo cách thủ công sẽ hiển thị cho bạn các thuộc tính. – ulkas

+1

Một cái gì đó như thế này có lẽ sẽ đi vào chơi khi cypher hỗ trợ các loại bản đồ để xử lý các cấu trúc như vậy một cách chính xác. –

+1

@MichaelHunger: Bạn có biết khi nào nó sẽ xảy ra? –

Trả lời

2

type() không trả lại thuộc tính mối quan hệ, nhưng loại mối quan hệ .

Cả hai nút và mối quan hệ đều có thể có thuộc tính, nhưng chỉ các mối quan hệ mới có thể có loại.

0

Để liệt kê tất cả các thuộc tính của nút trong đồ thị dưới DB, bạn có thể thử sử dụng cypher sau:

match (n) 
WITH distinct keys(n) as properties 
UNWIND properties as property 
return distinct property 

Cảm ơn, Vishal

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