QueryBuilder
age-schema-client / QueryBuilder
Class: QueryBuilder<T>
Defined in: src/query/builder.ts:37
Query builder class
Extended by
Type Parameters
| Type Parameter |
|---|
T extends SchemaDefinition |
Implements
Constructors
Constructor
new QueryBuilder<T>(
schema,
queryExecutor,
graphName): QueryBuilder<T>;
Defined in: src/query/builder.ts:60
Create a new query builder
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
schema | T | undefined | Schema definition |
queryExecutor | QueryExecutor | undefined | Query executor |
graphName | string | 'default' | Graph name |
Returns
QueryBuilder<T>
Methods
match()
Implementation of the match method
Call Signature
match<L>(label, alias): IMatchClause<T, L>;
Defined in: src/query/builder.ts:71
Add MATCH clause for a vertex
Type Parameters
| Type Parameter |
|---|
L extends string | number | symbol |
Parameters
| Parameter | Type |
|---|---|
label | L |
alias | string |
Returns
IMatchClause<T, L>
Implementation of
Call Signature
match<E>(
sourceAlias,
edgeLabel,
targetAlias): IEdgeMatchClause<T>;
Defined in: src/query/builder.ts:76
Add MATCH clause for an edge between two previously matched vertices
Type Parameters
| Type Parameter |
|---|
E extends string | number | symbol |
Parameters
| Parameter | Type |
|---|---|
sourceAlias | string |
edgeLabel | E |
targetAlias | string |
Returns
IEdgeMatchClause<T>
Implementation of
Call Signature
match<E>(
sourceAlias,
edgeLabel,
targetAlias,
edgeAlias): IEdgeMatchClause<T>;
Defined in: src/query/builder.ts:85
Add MATCH clause for an edge between two previously matched vertices with an edge alias
Type Parameters
| Type Parameter |
|---|
E extends string | number | symbol |
Parameters
| Parameter | Type |
|---|---|
sourceAlias | string |
edgeLabel | E |
targetAlias | string |
edgeAlias | string |
Returns
IEdgeMatchClause<T>
Implementation of
where()
where(condition, params): this;
Defined in: src/query/builder.ts:234
Add WHERE clause
Parameters
| Parameter | Type | Description |
|---|---|---|
condition | string | Condition expression |
params | Record<string, any> | Parameters |
Returns
this
This query builder
Implementation of
return()
return(...expressions): this;
Defined in: src/query/builder.ts:278
Add RETURN clause
Parameters
| Parameter | Type | Description |
|---|---|---|
...expressions | string[] | Return expressions |
Returns
this
This query builder
Implementation of
orderBy()
orderBy(expression, direction): this;
Defined in: src/query/builder.ts:290
Add ORDER BY clause
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
expression | string | undefined | Expression to order by |
direction | OrderDirection | OrderDirection.ASC | Order direction |
Returns
this
This query builder
Implementation of
limit()
limit(count): this;
Defined in: src/query/builder.ts:311
Add LIMIT clause
Parameters
| Parameter | Type | Description |
|---|---|---|
count | number | Limit count |
Returns
this
This query builder
Implementation of
skip()
skip(count): this;
Defined in: src/query/builder.ts:322
Add SKIP clause
Parameters
| Parameter | Type | Description |
|---|---|---|
count | number | Skip count |
Returns
this
This query builder
Implementation of
with()
with(...expressions): this;
Defined in: src/query/builder.ts:333
Add WITH clause
Parameters
| Parameter | Type | Description |
|---|---|---|
...expressions | string[] | With expressions |
Returns
this
This query builder
Implementation of
unwind()
unwind(expression, alias): this;
Defined in: src/query/builder.ts:345
Add UNWIND clause
Parameters
| Parameter | Type | Description |
|---|---|---|
expression | string | Expression to unwind |
alias | string | Alias for unwound items |
Returns
this
This query builder
Implementation of
withParam()
withParam(name, value): this;
Defined in: src/query/builder.ts:357
Add a parameter to the query
Parameters
| Parameter | Type | Description |
|---|---|---|
name | string | Parameter name |
value | any | Parameter value |
Returns
this
This query builder
Implementation of
setParam()
setParam(key, value): Promise<QueryBuilder<T>>;
Defined in: src/query/builder.ts:373
Set a parameter in the age_params temporary table
This method inserts a parameter into the age_params temporary table using an INSERT ON CONFLICT UPDATE statement. The parameter can then be referenced in a Cypher query using the get_age_param() function.
Parameters
| Parameter | Type | Description |
|---|---|---|
key | string | Parameter key |
value | any | Parameter value (will be converted to JSON) |
Returns
Promise<QueryBuilder<T>>
This query builder
Implementation of
withParamFunction()
withParamFunction(functionName, alias): this;
Defined in: src/query/builder.ts:398
Add a WITH clause that calls a function to get parameters
This is specifically for Apache AGE compatibility, as it requires parameters to be passed via a function call in a WITH clause.
Parameters
| Parameter | Type | Description |
|---|---|---|
functionName | string | Fully qualified function name (e.g., 'schema.get_params') |
alias | string | Alias for the function result (e.g., 'params') |
Returns
this
This query builder
Implementation of
IQueryBuilder.withParamFunction
withAgeParam()
withAgeParam(key, alias): this;
Defined in: src/query/builder.ts:413
Add a WITH clause that calls the get_age_param function
This method adds a WITH clause that calls the get_age_param function to retrieve a parameter from the age_params temporary table.
Parameters
| Parameter | Type | Description |
|---|---|---|
key | string | Parameter key to retrieve |
alias | string | Alias for the parameter in the query |
Returns
this
This query builder
Implementation of
withAllAgeParams()
withAllAgeParams(alias): this;
Defined in: src/query/builder.ts:428
Add a WITH clause that calls the get_all_age_params function
This method adds a WITH clause that calls the get_all_age_params function to retrieve all parameters from the age_params temporary table.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
alias | string | 'params' | Alias for the parameters object in the query |
Returns
this
This query builder
Implementation of
IQueryBuilder.withAllAgeParams
execute()
execute<R>(options): QueryBuilderResult<R>;
Defined in: src/query/builder.ts:441
Execute the query
Type Parameters
| Type Parameter | Default type |
|---|---|
R | any |
Parameters
| Parameter | Type | Description |
|---|---|---|
options | QueryExecutionOptions | Query execution options |
Returns
Query result
Throws
Error if query validation fails
Implementation of
reset()
reset(): this;
Defined in: src/query/builder.ts:584
Reset the query builder state
Returns
this
This query builder
toCypher()
toCypher(): string;
Defined in: src/query/builder.ts:595
Get the Cypher query string
Returns
string
Cypher query string
Implementation of
getParameters()
getParameters(): Record<string, any>;
Defined in: src/query/builder.ts:607
Get the query parameters
Returns
Record<string, any>
Query parameters
Implementation of
validateSchema()
validateSchema(): string[];
Defined in: src/query/builder.ts:624
Validate the query against the schema
Returns
string[]
Validation errors, if any
validateQuery()
validateQuery(): string[];
Defined in: src/query/builder.ts:707
Validate the query for variable references and other semantic issues
Returns
string[]
Validation errors with helpful suggestions