Package io.trino.plugin.jdbc
Class DefaultQueryBuilder
java.lang.Object
io.trino.plugin.jdbc.DefaultQueryBuilder
- All Implemented Interfaces:
QueryBuilder
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected StringbuildJoinColumn(JdbcClient client, JdbcColumnHandle columnHandle) callProcedure(JdbcClient client, ConnectorSession session, Connection connection, JdbcProcedureHandle.ProcedureQuery procedureQuery) protected StringformatAssignments(JdbcClient client, String relationAlias, Map<JdbcColumnHandle, String> assignments) protected StringformatJoinCondition(JdbcClient client, String leftRelationAlias, String rightRelationAlias, JdbcJoinCondition condition) protected StringformatJoinType(JoinType joinType) protected StringgetGroupBy(JdbcClient client, Optional<List<List<JdbcColumnHandle>>> groupingSets) protected StringgetProjection(JdbcClient client, List<JdbcColumnHandle> columns, Map<String, ParameterizedExpression> columnExpressions, Consumer<QueryParameter> accumulator) protected StringgetRelation(JdbcClient client, RemoteTableName remoteTableName) prepareDeleteQuery(JdbcClient client, ConnectorSession session, Connection connection, JdbcNamedRelationHandle baseRelation, TupleDomain<ColumnHandle> tupleDomain, Optional<ParameterizedExpression> additionalPredicate) prepareJoinQuery(JdbcClient client, ConnectorSession session, Connection connection, JoinType joinType, PreparedQuery leftSource, PreparedQuery rightSource, List<JdbcJoinCondition> joinConditions, Map<JdbcColumnHandle, String> leftAssignments, Map<JdbcColumnHandle, String> rightAssignments) prepareSelectQuery(JdbcClient client, ConnectorSession session, Connection connection, JdbcRelationHandle baseRelation, Optional<List<List<JdbcColumnHandle>>> groupingSets, List<JdbcColumnHandle> columns, Map<String, ParameterizedExpression> columnExpressions, TupleDomain<ColumnHandle> tupleDomain, Optional<ParameterizedExpression> additionalPredicate) prepareStatement(JdbcClient client, ConnectorSession session, Connection connection, PreparedQuery preparedQuery, Optional<Integer> columnCount) protected DomainpushDownDomain(JdbcClient client, ConnectorSession session, Connection connection, JdbcColumnHandle column, Domain domain) protected voidtoConjuncts(JdbcClient client, ConnectorSession session, Connection connection, TupleDomain<ColumnHandle> tupleDomain, com.google.common.collect.ImmutableList.Builder<String> result, Consumer<QueryParameter> accumulator) protected StringtoPredicate(JdbcClient client, ConnectorSession session, JdbcColumnHandle column, JdbcTypeHandle jdbcType, Type type, WriteFunction writeFunction, String operator, Object value, Consumer<QueryParameter> accumulator) protected StringtoPredicate(JdbcClient client, ConnectorSession session, Connection connection, JdbcColumnHandle column, Domain domain, Consumer<QueryParameter> accumulator) protected StringtoPredicate(JdbcClient client, ConnectorSession session, Connection connection, JdbcColumnHandle column, ValueSet valueSet, Consumer<QueryParameter> accumulator)
-
Constructor Details
-
DefaultQueryBuilder
-
-
Method Details
-
prepareSelectQuery
public PreparedQuery prepareSelectQuery(JdbcClient client, ConnectorSession session, Connection connection, JdbcRelationHandle baseRelation, Optional<List<List<JdbcColumnHandle>>> groupingSets, List<JdbcColumnHandle> columns, Map<String, ParameterizedExpression> columnExpressions, TupleDomain<ColumnHandle> tupleDomain, Optional<ParameterizedExpression> additionalPredicate) - Specified by:
prepareSelectQueryin interfaceQueryBuilder
-
prepareJoinQuery
public PreparedQuery prepareJoinQuery(JdbcClient client, ConnectorSession session, Connection connection, JoinType joinType, PreparedQuery leftSource, PreparedQuery rightSource, List<JdbcJoinCondition> joinConditions, Map<JdbcColumnHandle, String> leftAssignments, Map<JdbcColumnHandle, String> rightAssignments) - Specified by:
prepareJoinQueryin interfaceQueryBuilder
-
prepareDeleteQuery
public PreparedQuery prepareDeleteQuery(JdbcClient client, ConnectorSession session, Connection connection, JdbcNamedRelationHandle baseRelation, TupleDomain<ColumnHandle> tupleDomain, Optional<ParameterizedExpression> additionalPredicate) - Specified by:
prepareDeleteQueryin interfaceQueryBuilder
-
prepareStatement
public PreparedStatement prepareStatement(JdbcClient client, ConnectorSession session, Connection connection, PreparedQuery preparedQuery, Optional<Integer> columnCount) throws SQLException - Specified by:
prepareStatementin interfaceQueryBuilder- Throws:
SQLException
-
callProcedure
public CallableStatement callProcedure(JdbcClient client, ConnectorSession session, Connection connection, JdbcProcedureHandle.ProcedureQuery procedureQuery) throws SQLException - Specified by:
callProcedurein interfaceQueryBuilder- Throws:
SQLException
-
formatJoinCondition
protected String formatJoinCondition(JdbcClient client, String leftRelationAlias, String rightRelationAlias, JdbcJoinCondition condition) -
buildJoinColumn
-
formatAssignments
protected String formatAssignments(JdbcClient client, String relationAlias, Map<JdbcColumnHandle, String> assignments) -
formatJoinType
-
getRelation
-
getProjection
protected String getProjection(JdbcClient client, List<JdbcColumnHandle> columns, Map<String, ParameterizedExpression> columnExpressions, Consumer<QueryParameter> accumulator) -
pushDownDomain
protected Domain pushDownDomain(JdbcClient client, ConnectorSession session, Connection connection, JdbcColumnHandle column, Domain domain) -
toConjuncts
protected void toConjuncts(JdbcClient client, ConnectorSession session, Connection connection, TupleDomain<ColumnHandle> tupleDomain, com.google.common.collect.ImmutableList.Builder<String> result, Consumer<QueryParameter> accumulator) -
toPredicate
protected String toPredicate(JdbcClient client, ConnectorSession session, Connection connection, JdbcColumnHandle column, Domain domain, Consumer<QueryParameter> accumulator) -
toPredicate
protected String toPredicate(JdbcClient client, ConnectorSession session, Connection connection, JdbcColumnHandle column, ValueSet valueSet, Consumer<QueryParameter> accumulator) -
toPredicate
protected String toPredicate(JdbcClient client, ConnectorSession session, JdbcColumnHandle column, JdbcTypeHandle jdbcType, Type type, WriteFunction writeFunction, String operator, Object value, Consumer<QueryParameter> accumulator) -
getGroupBy
-