neo4j电影库

阅读: 评论:0

neo4j电影库

neo4j电影库

关系类型数量源数据目标数据属性
ACTED_IN172演员电影roles(角色扮演)属性,属性值为数组
DIRECTED44导演电影
PRODUCED15制片商电影
WROTE10作家电影
FOLLOWS3影评人影评人
REVIEWED9影评人电影summary(影评摘要)和 rating(评分)属性

【先按照书本整理下,等理解加深后,再加对应注释】

序号查询目的脚本
1查找所有相关电影、人物、关系MATCH (n) RETURN n
2查找名为“Tom Hanks”的人物MATCH (person{name:"Tom Hanks"}) RETURN person
3随机查找10个人物的人名MATCH (people:Person) RETURN people.name LIMIT 10
4随机查找10个人物MATCH (people:Person) RETURN people LIMIT 10
5查找1990-2000年之间发行的电影名称

MATCH (nineties:Movie)

leased>1990 leased<2000

RETURN nineties.leased

ORDER leased

6查找"Tom Hanks"参演过的电影名称

MATCH (people:Person{name:"Tom Hanks"})-[:ACTED_IN]->(actorMovies)

RETURN people,actorMovies

7查找谁导演了电影“Cloud Atlas”

MATCH (move {title:"Cloud Atlas"}) <- [:DIRECTED] - (directors)

RETURN directors.name

8查找与Tom Hanks一同出演过电影的人

MATCH (people:Person{name:"Tom Hanks"})-[:ACTED_IN]->(m)<-[:ACTED_IN]-(acActors)

RETURN acActors.name,m.title

9查找与电影"Cloud Atlas"相关的人

MATCH (people:Person) - [relatedTo] - (movie:Movie {title:"Cloud Atlas"})

RETURN people.name,Type(relatedTo),relatedTo,movie.title

10查找与演员"Kevin Bacon"存在4条及以内关系的任何演员和电影

MATCH (people:Person{name:"Kevin Bacon"}) - [*1..4] - (hollywood)

RETURN DISTINCT hollywood

11查找与演员"Kevin Bacon"与"Meg Ryan"之间的最短关系路径

MATCH p=shortestPath((people:Person{name:"Kevin Bacon"}) - [*] - (other:Person{name:"Meg Ryan"}))

RETURN p

12查找没有与Tom Hanks合作过的演员

1、先找到Tom Hanks还没有合作过的演员,但Tom Hanks的合作伙伴曾经与其合作过

2、找到一个可以向他的潜在合作者介绍Tom Hanks的人

MATCH (people:Person{name:"Tom Hanks"}) - [:ACTED_IN]->(m)<-[:ACTED_IN]-(others),

(others)-[:ACTED_IN]->(m2)<-[:ACTED_IN]-(otherothers)

WHERE NOT (people)- [:ACTED_IN]->(m2)

RETURN otherothers.name AS Recommended,count(*) AS Strength

ORDER BY Strength DESC

13找人将Tom Hanks介绍给Tom Cruise

MATCH

(tom:Person{name:"Tom Hanks"})-[:ACTED_IN]->(m)<-[:ACTED_IN]-(others),

(others)-[:ACTED_IN]->(m2)<-[:ACTED_IN]-(cruise:Person{name:"Tom Cruise"})

RETURN tom,m,others,m2,cruise

14匹配某个电影相关的演员和导演等多种关系

MATCH (movie:Movie{title:'The Matrix Reloaded'})<-[:ACTED_IN|DIRECTED]-(person)

RETURN person.name

15单条最短路径shortestPath函数

MATCH (apeople:Person{name:'Tom Hanks'}),(bpeople:Person{name:'Tom Cruise'}),

p=shortestPath((apeople)-[*..4]-(bpeople))

RETURN p

16所有最短路径allshortestPaths函数

MATCH (apeople:Person{name:'Tom Hanks'}),(bpeople:Person{name:'Tom Cruise'}),

p=allshortestPaths((apeople)-[*..4]-(bpeople))

RETURN p

本文发布于:2024-02-02 16:21:57,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170686211644981.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:电影库   neo4j
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23