首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Neo4j检查节点是否仅连接到节点

Neo4j检查节点是否仅连接到节点
EN

Stack Overflow用户
提问于 2022-01-12 20:30:45
回答 1查看 34关注 0票数 1

我有一个包含3种标签类型的neo4j db

name)

  • Timestamp

  • mom (同名)
  • 爸爸(有唯一的
  • )

和两种关系

  1. 打开应用程序
  2. 关闭了应用程序

每个父母都使用一个应用程序,db包含应用程序与爸爸妈妈的时间和日期之间的连接,比如:(妈妈)--打开->(时间)与爸爸标签和密切关系相同。

有多个爸爸妈妈在使用这个应用程序,我想把爸爸和妈妈联系起来。,爸爸和妈妈在同一时间使用这个应用程序,这意味着如果爸爸和妈妈有相同的时间戳(不多也不少),他们是连接的。

现在您无法计算这些连接,因为mom可能有4个连接到时间戳,但只与爸爸共享一个时间戳,而爸爸也有4个与时间戳的连接。

我试着做了那个查询:

//按名称匹配(d:dad {unique_name:“joe”)->(dad_ts:Timestamp)

集合(Dad_ts)为dad_ts_list

//获取连接到所有爸爸时间戳的所有妈妈

Match (m:mom)->(mom_ts:Timestamp)

其中所有( dad_ts_list中的ts),其中(妈妈)->(Ts))

返回m

现在我发现这段代码有两个问题

  1. --当我只需传递dad_ts,只得到与爸爸共享时间戳并使查询速度更快的时候,我就可以得到所有的消息。但有些情况下,如果我通过dad_ts,它还会返回妈妈,而不是全部连接到dad_ts
  2. ,如果妈妈连接到所有的dad_ts,但是有更多的连接,她不是妈妈。--

所以我试了一下psodocode

Timestamps

  • Get
  1. 以唯一的名字和连接到dad_ts
    1. 的妈妈获得妈妈的所有时间戳(从妈妈时间戳连接到爸爸的时间戳),给您留下一个不正确的妈妈连接到
    2. 的时间戳列表,得到没有连接到4个时间戳的妈妈

所以我尝试了这样的方法:

//叫爸爸的名字

匹配(d:爸爸(unique_name:“joe”)->(dad_ts:Timestamp)

With ( dad_ts )为dad_ts_list,dad_ts

//获取所有连接到至少一个父亲时间戳的妈妈

Match (m:mom)->(dad_ts)

Match (m)->(mom_ts:Timestamp)

//备选案文A

dad_ts.value <> mom_ts.value

//它如何给我所有的mom_ts灌输了dad_ts。我认为这是因为它是日期时间类型,所以我尝试将它更改为string,但仍然无法工作。

//备选案文B

集合(Mom_ts)为mom_ts_list,dad_ts_list,m

//尝试筛选列表

过滤器(在mom_ts_list中t,在dad_ts_list中t)作为not_dad_ts

//,这也返回了注入dad_ts的所有时间戳

//不确定到底什么时候才能得到没有连接的妈妈,因为我无法创建错误时间戳的时间戳列表,但我认为应该是这样的。

(M)->(ts:时间戳)

其中无(t在not_dad_ts中ts.value = t.value)

返回m

因此,如果您能够帮助更正查询/您有更好的想法得到只完全连接到dad_ts的mom节点,那就太好了。

EN

回答 1

Stack Overflow用户

发布于 2022-01-14 16:07:24

请尝试以下查询:

代码语言:javascript
复制
//get a dad by name Match (d:dad {unique_name:"joe")-->(dad_ts:Timestamp)

With collect(dad_ts) as dad_ts_list

//get all the mom that connected to the all of dad Timestamp

Match (m:mom)->(mom_ts:Timestamp)

Where all(dad_ts in dad_ts_list where dad_ts = mom_ts)

Return m

因此,与检查(mom)->(ts)不同,您可以检查dad_ts是否与mom_ts相同。如果有用的话请告诉我。如果在某一点上失败,请给我们样本数据。谢谢。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70687998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档