首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Neo4J:好友推荐简单示例

Neo4J:好友推荐简单示例

作者头像
程裕强
发布2019-10-22 12:04:12
发布2019-10-22 12:04:12
9760
举报

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/chengyuqiang/article/details/102658749

说明:该例子来源于《Neo4j 3.x 入门经典》

1、初始化数据

代码语言:javascript
复制
CREATE (leBig:Dude {name: "Lebowski"})
CREATE (dudeA1:Dude {name: "A1"})
CREATE (dudeA2:Dude {name: "A2"})

CREATE (leBig)<-[:FRIEND_OF]-(dudeA1)
CREATE (leBig)<-[:FRIEND_OF]-(dudeA2)

CREATE (dudeB1:Dude {name: "B1"})
CREATE (dudeB2:Dude {name: "B2"})
CREATE (dudeB3:Dude {name: "B3"})
代码语言:javascript
复制
MATCH (dudeA1:Dude {name: "A1"})
MATCH (dudeA2:Dude {name: "A2"})
MATCH (dudeB1:Dude {name: "B1"})
MATCH (dudeB2:Dude {name: "B2"})
MATCH (dudeB3:Dude {name: "B3"})
CREATE (dudeA1)<-[:FRIEND_OF]-(dudeB1)
CREATE (dudeA1)<-[:FRIEND_OF]-(dudeB2)
CREATE (dudeA1)<-[:FRIEND_OF]-(dudeB3)
CREATE (dudeA2)<-[:FRIEND_OF]-(dudeB1)
CREATE (dudeA2)<-[:FRIEND_OF]-(dudeB2)
CREATE (dudeA2)<-[:FRIEND_OF]-(dudeB3)

CREATE (dudeC1:Dude {name: "C1"})
CREATE (dudeC2:Dude {name: "C2"})
CREATE (dudeC3:Dude {name: "C3"})
CREATE (dudeC4:Dude {name: "C4"})

CREATE (dudeB1)<-[:FRIEND_OF]-(dudeC1)
CREATE (dudeB1)<-[:FRIEND_OF]-(dudeC2)
CREATE (dudeB1)<-[:FRIEND_OF]-(dudeC3)
CREATE (dudeB1)<-[:FRIEND_OF]-(dudeC4)

CREATE (dudeB2)<-[:FRIEND_OF]-(dudeC1)
CREATE (dudeB2)<-[:FRIEND_OF]-(dudeC2)
CREATE (dudeB2)<-[:FRIEND_OF]-(dudeC3)
CREATE (dudeB2)<-[:FRIEND_OF]-(dudeC4)

CREATE (dudeB3)<-[:FRIEND_OF]-(dudeC1)
CREATE (dudeB3)<-[:FRIEND_OF]-(dudeC2)
CREATE (dudeB3)<-[:FRIEND_OF]-(dudeC3)
CREATE (dudeB3)<-[:FRIEND_OF]-(dudeC4)
代码语言:javascript
复制
MATCH (d:Dude) RETURN d

2、好友推荐

(1) Lebowski的朋友

代码语言:javascript
复制
MATCH (le:Dude {name:"Lebowski"})<-[:FRIEND_OF]-(some:Dude)
RETURN some

(2) Lebowski的朋友的朋友

代码语言:javascript
复制
MATCH (le:Dude {name:"Lebowski"})<-[:FRIEND_OF]-(someA:Dude)<-[:FRIEND_OF]-(someB:Dude)
RETURN someB

(3) Lebowski的朋友的朋友的朋友

代码语言:javascript
复制
MATCH (le:Dude {name:"Lebowski"})<-[:FRIEND_OF*3]-(some:Dude)
RETURN DISTINCT some
代码语言:javascript
复制
MATCH (le:Dude {name:"Lebowski"})<-[:FRIEND_OF*3]-(some:Dude) RETURN some
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/10/21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、初始化数据
  • 2、好友推荐
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档