【发布时间】:2018-05-09 07:53:19
【问题描述】:
我是 cypher 新手,我想在使用 'DISTINCT' 后获取数据,但我只能获取 'DISTINCT' 属性的值,例如:
CREATE (n:person {name: "a", age: 22})
CREATE (n:person {name: "a", age: 23})
CREATE (n:person {name: "a", age: 24})
我只想得到一个名为“a”的标签为“person”的节点,所以我尝试这样的查询
MATCH (n:person) RETURN DISTINCT n.name
这个只返回“a”,但是我想要节点的所有属性和值,也就是{name:“a”,age:22},怎么办?
【问题讨论】:
-
我不明白你想要什么结果。能给我举个例子吗 ?因为您似乎想要
distinct,但也想要所有值... -
@logisima 以我的问题中的代码为例,我创建了三个同名但年龄不同的人。我想获取具有不同名称的人员信息,例如人员 {name: "a", age:22},并且我不希望结果包含另外两个人。我希望它更清楚......
-
好的,我理解名称的不同之处,但为什么你想要节点年龄
22而不是23或24?是因为它是第一个,较低的,其他的吗? -
@logisima 实际上,年龄无关紧要。我的真实数据是一些保险案例,比如有一个案例包含2个人,所以有两条caseId相同的记录,{caseId: 1, name:"a", time: "19:57"}, {caseId :1,名称:“b”,时间:“19:57”}。我不需要“name”属性,但我想要“caseId”和“time”。我希望我说清楚...