Skip to main content
Version: 1.x


In this section, you will explore SurrealQL, a powerful database query language that closely resembles traditional SQL but comes with unique differences and improvements.

SurrealQL is designed to provide developers with a seamless and intuitive way to interact with SurrealDB. It offers a familiar syntax and supports various statement types, allowing you to perform complex database operations efficiently.

While SurrealQL shares similarities with traditional SQL, it introduces enhancements and optimizations that make it well-suited for working with SurrealDB's advanced features. Whether you are querying data, modifying records, or managing database structures, SurrealQL provides a comprehensive set of capabilities to meet your needs.

Key Features

SurrealQL offers several key features that make it a powerful tool for working with SurrealDB:

  • Familiar Syntax: SurrealQL adopts a syntax similar to traditional SQL, making it easy for developers familiar with SQL to transition to SurrealDB seamlessly.

  • Advanced Querying: SurrealQL supports a wide range of querying capabilities, including filtering, sorting, aggregating, and joining data from multiple tables.

  • Data Manipulation: With SurrealQL, you can easily insert, update, and delete records in your SurrealDB database, allowing you to manage your data effectively.

  • Graph relationships: SurrealQL supports graph relationships, allowing you to define and query relationships between records in your database.

  • Schema Management: SurrealQL provides features for creating and modifying database schemas, allowing you to define the structure of your data and enforce data integrity.

  • Performance Optimization: SurrealQL incorporates optimizations specific to SurrealDB, ensuring efficient execution of queries and minimizing resource usage.

Getting Started

To start using SurrealQL, refer to the documentation on the various statement types and their syntax. The statements page provides comprehensive examples and explanations for each statement type, helping you understand how to construct queries and interact with SurrealDB effectively.

We hope that SurrealQL empowers you to leverage the full potential of SurrealDB and enables you to build robust and scalable applications. Let's dive into the world of SurrealQL and unlock the capabilities of SurrealDB together!


To learn more about SurrealQL and how to use it effectively, check out the following resources:

  • Select Statement: Learn how to retrieve data from your SurrealDB database using the SELECT statement and explore various querying options: