Package org.apache.calcite.linq4j
Interface QueryProvider
-
- All Known Subinterfaces:
CalciteConnection
- All Known Implementing Classes:
CalciteConnectionImpl
,CalciteJdbc41Factory.CalciteJdbc41Connection
,JdbcQueryProvider
,QueryProviderImpl
public interface QueryProvider
Defines methods to create and execute queries that are described by aQueryable
object.Analogous to LINQ's System.Linq.QueryProvider.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> Queryable<T>
createQuery(Expression expression, java.lang.Class<T> rowType)
Constructs aQueryable
object that can evaluate the query represented by a specified expression tree.<T> Queryable<T>
createQuery(Expression expression, java.lang.reflect.Type rowType)
Constructs aQueryable
object that can evaluate the query represented by a specified expression tree.<T> T
execute(Expression expression, java.lang.Class<T> type)
Executes the query represented by a specified expression tree.<T> T
execute(Expression expression, java.lang.reflect.Type type)
Executes the query represented by a specified expression tree.<T> Enumerator<T>
executeQuery(Queryable<T> queryable)
Executes a queryable, and returns an enumerator over the rows that it yields.
-
-
-
Method Detail
-
createQuery
<T> Queryable<T> createQuery(Expression expression, java.lang.Class<T> rowType)
Constructs aQueryable
object that can evaluate the query represented by a specified expression tree.NOTE: The
RawQueryable.getExpression()
property of the returnedQueryable
object is equal toexpression
.- Type Parameters:
T
- Row type- Parameters:
expression
- ExpressionrowType
- Row type- Returns:
- Queryable
-
createQuery
<T> Queryable<T> createQuery(Expression expression, java.lang.reflect.Type rowType)
Constructs aQueryable
object that can evaluate the query represented by a specified expression tree. The row type may contain generic information.- Type Parameters:
T
- Row type- Parameters:
expression
- ExpressionrowType
- Row type- Returns:
- Queryable
-
execute
<T> T execute(Expression expression, java.lang.Class<T> type)
Executes the query represented by a specified expression tree.This method executes queries that return a single value (instead of an enumerable sequence of values). Expression trees that represent queries that return enumerable results are executed when the
Queryable
object that contains the expression tree is enumerated.The Queryable standard query operator methods that return singleton results call
execute
. They pass it aMethodCallExpression
that represents a linq4j query.
-
execute
<T> T execute(Expression expression, java.lang.reflect.Type type)
Executes the query represented by a specified expression tree. The row type may contain type parameters.
-
executeQuery
<T> Enumerator<T> executeQuery(Queryable<T> queryable)
Executes a queryable, and returns an enumerator over the rows that it yields.- Parameters:
queryable
- Queryable- Returns:
- Enumerator over rows
-
-