ラベルは、ノードとエッジのプロパティを表すために使用されます。 プロパティのセマンティックな意味に基づいて、ノードとエッジを分類できます。
ステートメントで複数のラベルを指定
次のサンプルコードに示すように、| を使用して複数のラベルを区切ります。
(n:Person|Company)
[p:KNOWS|LIKES]テストデータの準備
SELECT create_graph('imdb');
SELECT *
FROM cypher('imdb', $$
CREATE (toby:actor {name: 'Toby Maguire'}),
(willam:director {name: 'Willam Dafoe'}),
(hanks:person {name: 'Tom Hanks'}),
(spiderman:movie {title: 'Spiderman'}),
(toby)-[:acted_in]->(spiderman),
(willam)-[:directed]->(spiderman),
(hanks)-[:likes]->(spiderman)
$$) AS (a agtype);例
actorまたはdirectorラベルで名前を照会します。SELECT * FROM cypher('imdb', $$ MATCH (a:actor|director) RETURN a.name $$ ) as (name agtype);サンプル結果:
name ---------------- "Toby Maguire" "Willam Dafoe" (2 rows)映画の
スパイダーマンに関係する個人に、監督または演技の関係で質問します。SELECT * FROM cypher('imdb', $$ MATCH (p)-[r:acted_in|directed]->(:movie {title: 'Spiderman'}) RETURN p.name $$ ) as (name agtype);サンプル結果:
name ---------------- "Toby Maguire" "Willam Dafoe" (2 rows)