Skip to main content
HelixQL is a strongly typed, compiled query language for HelixDB that combines the best features of Gremlin, Cypher, and Rust to provide type-safe graph and vector queries.

Why use HelixQL instead of other query languages?

HelixQL addresses key limitations found in existing graph query languages:
  • Type safety: Queries are validated at compile time, catching errors before runtime
  • Readability: Clean, concise syntax that remains readable even for complex queries
  • Performance: Compiled queries execute faster than dynamically parsed alternatives
  • Developer experience: IDE support with autocomplete and type checking
Unlike Gremlin’s verbose syntax or Cypher’s runtime parsing, HelixQL provides a modern, type-safe approach to graph querying.

How do I write a HelixQL query?

HelixQL queries follow a simple, declarative syntax:
QUERY QueryName(param1: Type, param2: Type) =>
    result <- traversal_expression
    RETURN result

Query components

  • QUERY: Keyword to start a query definition
  • QueryName: Identifier for the query
  • parameters: Input parameters in parentheses
  • Type: Type of the parameter (e.g. String, I32, F64, Boolean, [Type] or schema Node/Edge)
  • =>: Separates query header from body
  • <-: Assignment operator
  • RETURN: Specifies output values
  • //: Single line comments

Next Steps

Deploy your first query

Learn how to deploy your first query in HelixQL.

Schemas

Learn about how to build your schema in HelixQL.

Traversals

Learn about how to traverse the graph in HelixQL.

Creating data

Learn about how to create data in HelixQL.

Vector operations

Learn about how to perform vector operations in HelixQL.

Keyword search

Learn about how to perform keyword search in HelixQL.

Properties

Learn about how to access properties in HelixQL.

Conditionals

Learn about how to use conditionals in HelixQL.

Result operations

Learn about how to perform result operations in HelixQL.

Output values

Learn about how to output values in HelixQL.

Types

Learn about the types of HelixQL.

Errors

Troubleshoot errors in HelixQL.