Interface ExposesSubqueryCall

All Known Subinterfaces:
ExposesSubqueryCall.BuildableSubquery, LoadCSVStatementBuilder, StatementBuilder, StatementBuilder.OngoingInQueryCallWithReturnFields, StatementBuilder.OngoingReading, StatementBuilder.OngoingReadingAndWith, StatementBuilder.OngoingReadingAndWithWithSkip, StatementBuilder.OngoingReadingAndWithWithWhereAndOrder, StatementBuilder.OngoingReadingWithoutWhere, StatementBuilder.OngoingReadingWithWhere, StatementBuilder.OngoingStandaloneCallWithReturnFields, StatementBuilder.OrderableOngoingReadingAndWith, StatementBuilder.OrderableOngoingReadingAndWithWithoutWhere, StatementBuilder.OrderableOngoingReadingAndWithWithWhere, StatementBuilder.VoidCall

@API(status=STABLE, since="2020.1.2") @Neo4jVersion(minimum="4.0.0") public interface ExposesSubqueryCall
This exposes a call method taking in a statement that represents a valid, correlated subquery.
Since:
2020.1.2
Author:
Michael J. Simons
Neo4j version required
4.0.0
  • Method Details

    • call

      @NotNull @CheckReturnValue default @NotNull ExposesSubqueryCall.BuildableSubquery call(Statement statement)
      The subquery parameter must be a valid subquery.
      • can be a unit statement
      • cannot refer to variables from the enclosing query
      • cannot return variables with the same names as variables in the enclosing query
      • All variables that are returned from a subquery are afterwards available in the enclosing query
      Parameters:
      statement - The statement representing the subquery.
      Returns:
      An ongoing reading
    • call

      @NotNull @CheckReturnValue default @NotNull ExposesSubqueryCall.BuildableSubquery call(Statement statement, String... imports)
      The subquery parameter must be a valid subquery.
      • must end with a RETURN clause
      • cannot refer to variables from the enclosing query
      • cannot return variables with the same names as variables in the enclosing query
      • All variables that are returned from a subquery are afterwards available in the enclosing query
      Parameters:
      statement - The statement representing the subquery.
      imports - Additional things that should be imported into the subquery.
      Returns:
      An ongoing reading
      Since:
      2021.3.0
    • call

      The subquery parameter must be a valid sub-query.
      • must end with a RETURN clause
      • cannot refer to variables from the enclosing query
      • cannot return variables with the same names as variables in the enclosing query
      • All variables that are returned from a subquery are afterwards available in the enclosing query
      Parameters:
      statement - The statement representing the sub-query.
      imports - Additional things that should be imported into the sub-query. aliased expressions will automatically be importe twice (once as WITH a, then {code WITH a AS alias}).
      Returns:
      An ongoing reading
      Since:
      2021.3.0
    • callInTransactions

      @NotNull @CheckReturnValue default @NotNull ExposesSubqueryCall.BuildableSubquery callInTransactions(Statement statement)
      Starts building a new sub-query from a CALL ... IN TRANSACTIONS clause
      Parameters:
      statement - The sub-query to be called in transactions
      Returns:
      Ongoing sub-query definition
    • callRawCypher

      @NotNull @CheckReturnValue @NotNull ExposesSubqueryCall.BuildableSubquery callRawCypher(String rawCypher, Object... args)
      Starts building a new sub-query from a raw Cypher string that might also have arguments as supported through Cypher.raw(String, Object...). Use this method as your own risk and be aware that no checks are done on the Cypher.
      Parameters:
      rawCypher - the raw Cypher statement to call
      args - optional args that replace placeholders in the rawCypher
      Returns:
      Ongoing sub-query definition
      Since:
      2023.10.0
    • callInTransactions

      @NotNull @CheckReturnValue default @NotNull ExposesSubqueryCall.BuildableSubquery callInTransactions(Statement statement, Integer rows)
      Creates a subquery running in its own transactions. The statement won't be checked for a RETURN or YIELD clause to accommodate for CREATE or other clauses that are void and work in a subquery if the outer query is void, too.
      Parameters:
      statement - The statement representing the subquery.
      rows - The number of rows per transactional batch, leave NULL for the default value
      Returns:
      An ongoing reading, that is also buildable for outer queries that are void.
      Since:
      2022.3.0
    • callInTransactions

      @NotNull @CheckReturnValue default @NotNull ExposesSubqueryCall.BuildableSubquery callInTransactions(Statement statement, String... imports)
      Creates a subquery running in its own transactions. The statement won't be checked for a RETURN or YIELD clause to accommodate for CREATE or other clauses that are void and work in a subquery if the outer query is void, too.
      Parameters:
      statement - The statement representing the subquery.
      imports - Additional things that should be imported into the subquery.
      Returns:
      An ongoing reading, that is also buildable for outer queries that are void.
      Since:
      2022.3.0
    • callInTransactions

      @NotNull @CheckReturnValue default @NotNull ExposesSubqueryCall.BuildableSubquery callInTransactions(Statement statement, Integer rows, String... imports)
      Creates a subquery running in its own transactions. The statement won't be checked for a RETURN or YIELD clause to accommodate for CREATE or other clauses that are void and work in a subquery if the outer query is void, too.
      Parameters:
      statement - The statement representing the subquery.
      rows - The number of rows per transactional batch, leave NULL for the default value
      imports - Additional things that should be imported into the subquery.
      Returns:
      An ongoing reading, that is also buildable for outer queries that are void.
      Since:
      2022.3.0
    • callInTransactions

      default ExposesSubqueryCall.BuildableSubquery callInTransactions(Statement statement, IdentifiableElement... imports)
      Creates a subquery running in its own transactions. The statement won't be checked for a RETURN or YIELD clause to accommodate for CREATE or other clauses that are void and work in a subquery if the outer query is void, too.
      Parameters:
      statement - The statement representing the subquery.
      imports - Additional things that should be imported into the subquery. aliased expressions will automatically imported twice (once as WITH a, then WITH a AS alias).
      Returns:
      An ongoing reading, that is also buildable for outer queries that are void.
      Since:
      2022.3.0
    • callInTransactions

      @NotNull @CheckReturnValue @NotNull ExposesSubqueryCall.BuildableSubquery callInTransactions(Statement statement, Integer rows, IdentifiableElement... imports)
      Creates a subquery running in its own transactions. The statement won't be checked for a RETURN or YIELD clause to accommodate for CREATE or other clauses that are void and work in a subquery if the outer query is void, too.
      Parameters:
      statement - The statement representing the subquery.
      rows - The number of rows per transactional batch, leave NULL for the default value
      imports - Additional things that should be imported into the subquery. aliased expressions will automatically imported twice (once as WITH a, then WITH a AS alias).
      Returns:
      An ongoing reading, that is also buildable for outer queries that are void.
      Since:
      2022.3.0