在Neo4j
图数据库中,我需要获取所有不同的节点属性。
例如:
图数据库有两种类型的节点Student{firstName,lastName}
和School{name,size}
。它有100所学校和1000名学生。
现在我想了解这些细节:
Student{firstName,lastName}
School{name,size}
我正在使用neo4j Java api。请帮帮我。
答案 0 :(得分:1)
你的问题很模糊,无论如何,我会试一试。我使用Cypher(我从不使用Java api)也许你可以使用这个概念在neo4j Java api中解决它。
MATCH (n: Student), (m:School)
RETURN n,m
或
MATCH (n: Student), (m:School)
RETURN n.firstname as 'First Name', n.lastname as 'Last Name', m.name as 'School Name', m.size as 'Size'
答案 1 :(得分:1)
来自Cypher
MATCH (n)
RETURN n
来自核心java api
for (Node n : GlobalGraphOperations.at(gdb).getAllNodes()) {
for (String prop: n.getPropertyKeys()) {
System.out.println(n.getProperty(prop));
}
for (Label l : n.getLabels()) {
System.out.println(l);
}
}
如果您只想查看每个标签的属性而不是所有节点的值,我会使用它:
match (n:School) return n limit 1;
match (n:Student) return n limit 1;
不幸的是,还没有一个架构信息声明每个标签可以使用哪些属性。
您可以使用它来获取图表的所有属性类型:
GlobalGraphOperations.at( graphDb ).getAllPropertyKeys()