使用Cypher查询语言创建了一个图数据库,其中包含了电影《The Matrix》和演员Keanu Reeves、Carrie-Anne Moss、Laurence Fishburne、Hugo Weaving以及导演Lilly Wachowski和Lana Wachowski之间的关系。
php
CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'})
CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})
CREATE (Carrie:Person {name:'Carrie-Anne Moss', born:1967})
CREATE (Laurence:Person {name:'Laurence Fishburne', born:1961})
CREATE (Hugo:Person {name:'Hugo Weaving', born:1960})
CREATE (LillyW:Person {name:'Lilly Wachowski', born:1967})
CREATE (LanaW:Person {name:'Lana Wachowski', born:1965})
CREATE (JoelS:Person {name:'Joel Silver', born:1952})
CREATE
(Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrix),
(Carrie)-[:ACTED_IN {roles:['Trinity']}]->(TheMatrix),
(Laurence)-[:ACTED_IN {roles:['Morpheus']}]->(TheMatrix),
(Hugo)-[:ACTED_IN {roles:['Agent Smith']}]->(TheMatrix),
(LillyW)-[:DIRECTED]->(TheMatrix),
(LanaW)-[:DIRECTED]->(TheMatrix),
(JoelS)-[:PRODUCED]->(TheMatrix)
1】创建电影节点:
php
CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'})
这行代码创建了一个名为"TheMatrix"的电影节点,并为该节点设置了三个属性:标题(title)为"The Matrix",发布年份(released)为1999,标语(tagline)为"Welcome to the Real World"。
2】创建演员节点:
php
CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})
CREATE (Carrie:Person {name:'Carrie-Anne Moss', born:1967})
CREATE (Laurence:Person {name:'Laurence Fishburne', born:1961})
CREATE (Hugo:Person {name:'Hugo Weaving', born:1960})
这部分代码创建了名为"Keanu"、"Carrie"、"Laurence"和"Hugo"的演员节点,并为每个节点设置了姓名(name)和出生年份(born)属性。
3】创建导演节点:
php
CREATE (LillyW:Person {name:'Lilly Wachowski', born:1967})
CREATE (LanaW:Person {name:'Lana Wachowski', born:1965})
这部分代码创建了名为"LillyW"和"LanaW"的导演节点,并为每个节点设置了姓名(name)和出生年份(born)属性。
4】创建演员与电影之间的关系:
php
CREATE
(Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrix),
(Carrie)-[:ACTED_IN {roles:['Trinity']}]->(TheMatrix),
(Laurence)-[:ACTED_IN {roles:['Morpheus']}]->(TheMatrix),
(Hugo)-[:ACTED_IN {roles:['Agent Smith']}]->(TheMatrix)
这部分代码创建了演员与电影之间的关系。每个关系都有一个角色属性(roles),表示演员在电影中饰演的角色。例如,Keanu Reeves饰演的角色是"Neo",Carrie-Anne Moss饰演的角色是"Trinity",Laurence Fishburne饰演的角色是"Morpheus",Hugo Weaving饰演的角色是"Agent Smith"。
5】创建导演与电影之间的关系:
php
(LillyW)-[:DIRECTED]->(TheMatrix),
(LanaW)-[:DIRECTED]->(TheMatrix)
这部分代码创建了导演与电影之间的关系。每个关系表示导演执导了对应的电影。在这里,Lilly Wachowski和Lana Wachowski都是电影《The Matrix》的导演。
6】创建制片人与电影之间的关系:
php
(JoelS)-[:PRODUCED]->(TheMatrix)
这行代码创建了制片人与电影之间的关系。关系表示Joel Silver是电影《The Matrix》的制片人.
通过以上代码,成功构建了一个包含电影、演员和导演之间关系的图数据库。这样的图数据库可以用于存储和查询电影及其相关人员的信息,便于以图形方式理解和分析数据。
结果:
1】MATCH p=()-[r:ACTED_IN]->() RETURN p LIMIT 25
2】MATCH p=()-[r:DIRECTED]->() RETURN p LIMIT 25
3】MATCH p=()-[r:PRODUCED]->() RETURN p LIMIT 25