Rechercher des motifs avec Cypher MATCH
Maîtrisez la clause MATCH pour trouver des motifs précis de nœuds et de relations dans vos données de graphe.
Rechercher des motifs avec Cypher MATCH est une leçon Neo4j Graph Database Fundamentals gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Neo4j Graph Database Fundamentals, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Neo4j Graph Database Fundamentals comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Discovering Data with MATCH
Welcome to the core of graph querying! The MATCH clause in Cypher is how you find specific patterns of data in your Neo4j graph.
Think of it like drawing the shape of the data you want to find. You describe nodes, relationships, and their properties, and Neo4j finds all instances that fit your description.
Finding Any Node
The simplest MATCH query finds any node in your graph. You represent a node using parentheses ().
Adding a variable inside, like (n), lets you refer to that node later, for example, to return its properties. We'll use LIMIT to show just a few results.
MATCH (n)
RETURN n LIMIT 3Matching Nodes by Label
Graphs often have different types of nodes. In Cypher, these types are called labels. You can specify a label to find only nodes of a particular type.
Labels are placed after the node variable, separated by a colon: (variable:Label).
MATCH (p:Person)
RETURN p.name LIMIT 3Matching Nodes by Property
Nodes also have properties, which are key-value pairs describing them. You can filter nodes based on these properties directly within your MATCH clause.
Properties are placed inside curly braces {} after the label (or variable if no label): (node:Label {key: 'value'}).
MATCH (m:Movie {title: 'The Matrix'})
RETURN m.releaseYearIntroducing Relationships
Relationships define how nodes are connected. In MATCH, you represent a relationship using dashes and angle brackets: -- for undirected, --> for directed, and <-- for reverse directed.
You can also assign a variable to the relationship, like -[r]-, to work with it.
MATCH (a)-[r]->(b)
RETURN a.name, TYPE(r), b.title LIMIT 3Matching Relationships by Type
Just like nodes have labels, relationships have types. Specifying a relationship type helps you find specific kinds of connections between nodes.
The type is placed after the relationship variable, separated by a colon: -[r:TYPE]->.
MATCH (p:Person)-[:ACTED_IN]->(m:Movie)
RETURN p.name, m.title LIMIT 3Matching with Direction
Relationships are directional! The arrows in your MATCH pattern indicate the flow. If you omit arrows (e.g., (a)-[r]-(b)), the match will be undirected, finding connections regardless of their stored direction.
It's generally best practice to specify direction when you know it.
MATCH (director:Person)<-[:DIRECTED]-(movie:Movie)
RETURN director.name, movie.title LIMIT 3Combining Node & Relationship Patterns
The real power of MATCH comes from combining nodes and relationships to describe complex patterns in your graph. You can chain multiple nodes and relationships together.
This allows you to find paths, connections through intermediate nodes, and more.
MATCH (p:Person {name: 'Tom Hanks'})-[:ACTED_IN]->(m:Movie)<-[:DIRECTED]-(d:Person)
RETURN p.name, m.title, d.nameFinding Optional Connections
Sometimes, a part of your pattern might not always exist. OPTIONAL MATCH tries to find the pattern, but if it doesn't, the unmatched parts will be null instead of failing the whole query.
This is useful when you want to see existing connections while still returning the main node even if a specific connection is missing.
MATCH (p:Person {name: 'Keanu Reeves'})
OPTIONAL MATCH (p)-[r]->(m:Movie)
RETURN p.name, TYPE(r), m.titleMatch Clause Challenge
Which Cypher MATCH clause correctly finds all movies directed by 'Quentin Tarantino'?
Recap: Mastering MATCH
Great job! You've learned the fundamental skill of finding patterns in your graph using the MATCH clause.
- Use
()for nodes,--for relationships. - Specify labels (
:Label) for node types and types (:TYPE) for relationships. - Filter by properties using
{}. - Arrows (
-->,<--) define relationship direction. OPTIONAL MATCHhelps find patterns that might not always exist without breaking the query.
Next, we'll explore how to refine your matched data using WHERE and ORDER BY!
Questions Fréquemment Posées
La leçon « Rechercher des motifs avec Cypher MATCH » est-elle gratuite ?
Oui — le texte complet de « Rechercher des motifs avec Cypher MATCH » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Neo4j Graph Database Fundamentals, passe à CoddyKit PRO. Le cours Neo4j Graph Database Fundamentals comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Rechercher des motifs avec Cypher MATCH » ?
Maîtrisez la clause MATCH pour trouver des motifs précis de nœuds et de relations dans vos données de graphe. Tu pratiques Neo4j Graph Database Fundamentals avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Neo4j Graph Database Fundamentals ?
Aucune expérience préalable n'est requise. Neo4j Graph Database Fundamentals sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Rechercher des motifs avec Cypher MATCH » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Neo4j Graph Database Fundamentals ?
Oui. Chaque leçon Neo4j Graph Database Fundamentals inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Nœuds, relations et propriétés
- Créer des données avec Cypher CREATE
- Rechercher des motifs avec Cypher MATCH
- Renvoyer et façonner les résultats avec RETURN