cyhper将两列合并为一个

时间:2016-01-07 15:37:23

标签: neo4j cypher

我找不到类似的帖子,所以如果你已经知道一个或者我的问题不合适,请告诉我。

我有这个查询

MATCH
  (t:Taxi {name:'Taxi1813'})<-[:ASSIGNED]-(u2:User)-[rd2:DROP_OFF]->
  (g2:Grid)-[r:TO*1..2]-(g:Grid)<-[rd:DROP_OFF]-(u:User)-[:ASSIGNED]->(t)
WHERE ID(u2) < ID(u) AND rd2.time >= '04:38' AND rd2.time <= '04:42'
WITH DISTINCT u2, g2, u, g, rd2, rd
MATCH p=shortestPath((g2)-[r:TO*1..2]-(g))
WITH rd2, rd,u2, g2, u, g, p, REDUCE(totalTime = 0, x IN RELATIONSHIPS(p) | totalTime + x.time) AS totalTime
WHERE totalTime <= 4
RETURN u2.name, u.name

所以最后我有两列

u2.name  u.name
User179  UserTest
User177  User179

是否存在将两个列合并为一个列并删除重复项的方法或功能

Users
User179
User177
UserTest

有什么建议吗?谢谢

2 个答案:

答案 0 :(得分:4)

您可以将两个集合合并为一个集合,然后只返回不同的项目。

with ['User179', 'User177'] as list1
, ['UserTest', 'User179'] as list2
unwind list1 + list2 as item
return distinct item

答案 1 :(得分:1)

u2.name + u.name结合了列表

你可以做类似&#34;其中u2.name不等于u.name(不正确的语法)&#34;