A Beginners Guide to Neo4j Cypher Query Language
05.11.2025
Introduction
Neo4j is a popular graph database management system that uses Cypher as its query language. Cypher is a powerful and expressive language that allows users to interact with the graph database efficiently. If you are new to Neo4j and Cypher, this beginner’s guide will help you get started with the basics of Cypher Query Language.
2. Nodes and Relationships
Nodes represent entities in the graph, while relationships define how nodes are connected. Both nodes and relationships can have properties associated with them, providing additional information about the data.
3. Writing Your First Query
To write a basic Cypher query, you can use the MATCH statement to find patterns in the graph data. For example, to find all nodes of a specific type, you can use the following query:
MATCH (n:Label) RETURN n;
4. Filtering Results
You can filter query results using the WHERE clause to specify conditions that must be met. For example, to find nodes with a specific property value, you can use the following query:
MATCH (n:Label) WHERE n.property = 'value' RETURN n;
5. Creating Relationships
To create relationships between nodes, you can use the CREATE statement followed by the relationship type and properties. For example, to create a relationship between two nodes, you can use the following query:
MATCH (n:Node1), (m:Node2) CREATE (n)-[:RELATIONSHIP_TYPE {property: 'value'}]->(m);
6. Updating Data
You can update node properties or relationships using the SET clause in your Cypher query. For example, to update a node property, you can use the following query:
MATCH (n:Label) WHERE n.property = 'old_value' SET n.property = 'new_value' RETURN n;
7. Deleting Data
To delete nodes or relationships from the graph, you can use the DELETE clause in your Cypher query. For example, to delete a node with specific properties, you can use the following query:
MATCH (n:Label) WHERE n.property = 'value' DELETE n;
8. Aggregating Data
You can perform aggregations on your query results using functions like COUNT, SUM, AVG, MIN, and MAX. For example, to count the number of nodes in your graph, you can use the following query:
MATCH (n) RETURN COUNT(n);
9. Ordering and Limiting Results
You can order query results using the ORDER BY clause and limit the number of results using the LIMIT clause. For example, to order nodes by a property value and limit the results, you can use the following query:
MATCH (n:Label) RETURN n ORDER BY n.property LIMIT 10;
10. Conclusion
Cypher Query Language provides a powerful and flexible way to interact with Neo4j graph databases. By mastering the basics of Cypher, you can efficiently query, update, and manipulate graph data to meet your application’s requirements.