| org.jpox.store.expression.QueryExpression
QueryExpression | public interface QueryExpression (Code) | | Expression for a query in language-independent form.
|
Method Summary | |
void | addExtension(String key, Object value) Method to define an extension for this query statement allowing control over its behaviour
in generating a query. | void | addGroupingExpression(ScalarExpression expr) Method to add a grouping clause to the statement. | void | andCondition(BooleanExpression condition) add an condition to the query. | void | andCondition(BooleanExpression condition, boolean unionQueries) | void | crossJoin(LogicSetExpression tableExpr, boolean unionQueries) | String | getCandidateAlias() Accessor for the candidate alias in use by the query. | Class | getCandidateClass() Accessor for the candidate class of the query expression. | ClassLoaderResolver | getClassLoaderResolver() Accessor for the ClassLoaderResolver to use with this query statement. | HashMap | getExtensions() Accessor for the extensions for this expression. | ScalarExpression[] | getGroupingExpressions() Accessor for the grouping expressions of this statement. | BooleanExpression | getHavingExpression() Accessor for the having expression of this statement. | DatastoreIdentifier | getMainTableAlias() Accessor for the alias of the main table of this query. | LogicSetExpression | getMainTableExpression() Accessor for the expression for the main table of this query. | int | getNumberOfScalarExpressions() Accessor for the number of ScalarExpression projected. | ScalarExpression[] | getOrderingExpressions() Accessor for the ordering expressions of this statement. | QueryExpression | getParent() Accessor for the parent QueryExpression if this is a nested expression. | StoreManager | getStoreManager() Accessor for the store manager associated with this query. | LogicSetExpression | getTableExpression(DatastoreIdentifier alias) Accessor to the table expression for the given alias. | Object | getValueForExtension(String key) Accessor for the value for an extension. | boolean | hasCrossJoin(LogicSetExpression tableExpr) | boolean | hasMetaDataExpression() | void | innerJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals, boolean unionQueries) Method to do an inner join to another table, and optionally apply it to
any unions for this query. | void | innerJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals) Method to do an inner join to another table. | void | iorCondition(BooleanExpression condition) add an condition to the query. | void | iorCondition(BooleanExpression condition, boolean unionQueries) | void | leftOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals, boolean unionQueries) Method to do a left outer join to another table, and optionally apply it
to any unions for this query. | void | leftOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals) Method to do a left outer join to another table. | LogicSetExpression | newTableExpression(DatastoreContainerObject mainTable, DatastoreIdentifier alias) | LogicSetExpression[] | newTableExpression(DatastoreContainerObject mainTable, DatastoreIdentifier alias, boolean unionQueries) | void | reset() | void | rightOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals, boolean unionQueries) Method to do a right outer join to another table, and optionally apply it
to any unions for this query. | void | rightOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals) Method to do a right outer join to another table. | int[] | select(JavaTypeMapping mapping) | int[] | select(JavaTypeMapping mapping, boolean unionQueries) | int[] | select(DatastoreIdentifier alias, JavaTypeMapping mapping) | int[] | select(DatastoreIdentifier alias, JavaTypeMapping mapping, boolean unionQueries) | int[] | selectDatastoreIdentity(String alias, boolean unionQueries) Select the datastore identity column. | int[] | selectField(String fieldName, String alias, boolean unionQueries) Select the column(s) for the specified field in the primary table of the query.
Parameters: fieldName - Name of the field Parameters: alias - Alias to use for these column(s) Parameters: unionQueries - Whether to select the field column(s) of all unioned queries. | int | selectScalarExpression(ScalarExpression expr) | int | selectScalarExpression(ScalarExpression expr, boolean unionQueries) | int[] | selectVersion(String alias, boolean unionQueries) Select the version column. | void | setCandidateInformation(Class cls, String alias) Method to set the candidate class and alias in use by the query. | void | setDistinctResults(boolean distinctResults) Set whether this statement returns distinct results. | void | setExistsSubQuery(boolean isExistsSubQuery) Set this query is to be used as a as set for the Exists function. | void | setHaving(BooleanExpression expr) Method to set the having clause of the statement. | void | setOrdering(ScalarExpression[] exprs, boolean[] descending) Mutator for the ordering criteria. | void | setParent(QueryExpression parentQueryExpr) Sets the parent QueryExpression of this query. | void | setRangeConstraint(long offset, long count) Method to add a range constraint on any SELECT. | void | setUpdates(ScalarExpression[] exprs) set the update condition(s) for the query. | StatementText | toDeleteStatementText() Method to convert the criteria into a delete statement text. | StatementText | toStatementText(boolean lock) Method to convert the criteria into the statement text. | StatementText | toUpdateStatementText() Method to convert the criteria into an update statement text. | void | union(QueryExpression qe) Union two QueryExpressions this and qe .
Both QueryExpressions must have the same ScalarExpressions selected,
and they must be in the same select order. |
addExtension | void addExtension(String key, Object value)(Code) | | Method to define an extension for this query statement allowing control over its behaviour
in generating a query.
Parameters: key - Extension key Parameters: value - Value for the key |
addGroupingExpression | void addGroupingExpression(ScalarExpression expr)(Code) | | Method to add a grouping clause to the statement.
Grouping clauses that are implied by the selected columns will be added automatically
so this provides a means to supplement them.
Parameters: expr - The group by expression |
andCondition | void andCondition(BooleanExpression condition)(Code) | | add an condition to the query.
Parameters: condition - the Boolean expression |
andCondition | void andCondition(BooleanExpression condition, boolean unionQueries)(Code) | | add an condition to the query and queries involved in the union if unionQuery is true
Parameters: condition - the Boolean expression Parameters: unionQueries - whether to apply the condition in all queries unified by the union clause |
crossJoin | void crossJoin(LogicSetExpression tableExpr, boolean unionQueries)(Code) | | Method to add tables/crossJoin but no joins to they, will be output as FROM TABLE1,TABLE2,TABLE3
Parameters: tableExpr - table expression Parameters: unionQueries - Whether to apply the alias to unions of this query. |
getCandidateAlias | String getCandidateAlias()(Code) | | Accessor for the candidate alias in use by the query.
Candidate alias |
getCandidateClass | Class getCandidateClass()(Code) | | Accessor for the candidate class of the query expression.
Candidate class |
getClassLoaderResolver | ClassLoaderResolver getClassLoaderResolver()(Code) | | Accessor for the ClassLoaderResolver to use with this query statement.
ClassLoader resolver |
getExtensions | HashMap getExtensions()(Code) | | Accessor for the extensions for this expression.
Extensions |
getGroupingExpressions | ScalarExpression[] getGroupingExpressions()(Code) | | Accessor for the grouping expressions of this statement.
The grouping expressions |
getHavingExpression | BooleanExpression getHavingExpression()(Code) | | Accessor for the having expression of this statement.
The having expression |
getMainTableAlias | DatastoreIdentifier getMainTableAlias()(Code) | | Accessor for the alias of the main table of this query.
Alias for the main table in the query |
getMainTableExpression | LogicSetExpression getMainTableExpression()(Code) | | Accessor for the expression for the main table of this query.
This is the same as the default table expression except where this is a subquery.
Main table expression |
getNumberOfScalarExpressions | int getNumberOfScalarExpressions()(Code) | | Accessor for the number of ScalarExpression projected.
The number of columns in the SELECT |
getOrderingExpressions | ScalarExpression[] getOrderingExpressions()(Code) | | Accessor for the ordering expressions of this statement.
The ordering expressions |
getParent | QueryExpression getParent()(Code) | | Accessor for the parent QueryExpression if this is a nested expression.
Parent expression |
getStoreManager | StoreManager getStoreManager()(Code) | | Accessor for the store manager associated with this query.
The store manager |
getValueForExtension | Object getValueForExtension(String key)(Code) | | Accessor for the value for an extension.
Parameters: key - Key for the extension Value for the extension (if any) |
hasCrossJoin | boolean hasCrossJoin(LogicSetExpression tableExpr)(Code) | | Method to add tables/alias but no joins to they, will be output as FROM TABLE1,TABLE2,TABLE3
Checks parent expressions until reach the root expression
Parameters: tableExpr - table expression |
hasMetaDataExpression | boolean hasMetaDataExpression()(Code) | | Whether this query will return a meta data expression in the SELECT clause
hasMetaDataExpression |
innerJoin | void innerJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals, boolean unionQueries)(Code) | | Method to do an inner join to another table, and optionally apply it to
any unions for this query.
Parameters: expr - the left hand expression Parameters: expr2 - the right hand expression Parameters: tblExpr - the Parameters: equals - if the join is applied as filter, if use equals or not equals Parameters: unionQueries - whether to apply the inner join in all queries unified by the union clause |
innerJoin | void innerJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals)(Code) | | Method to do an inner join to another table.
Parameters: expr - the left hand expression Parameters: expr2 - the right hand expression Parameters: tblExpr - The table expression for the table to apply the join Parameters: equals - if the join is applied as filter, if use equals or not equals |
iorCondition | void iorCondition(BooleanExpression condition)(Code) | | add an condition to the query.
Parameters: condition - the Boolean expression |
iorCondition | void iorCondition(BooleanExpression condition, boolean unionQueries)(Code) | | add an condition to the query and queries involved in the union if unionQuery is true
Parameters: condition - the Boolean expression Parameters: unionQueries - whether to apply the condition in all queries unified by the union clause |
leftOuterJoin | void leftOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals, boolean unionQueries)(Code) | | Method to do a left outer join to another table, and optionally apply it
to any unions for this query.
Parameters: expr - the left hand expression Parameters: expr2 - the right hand expression Parameters: tblExpr - The table expression for the table to apply the join Parameters: equals - if the join is applied as filter, if use equals or not equals Parameters: unionQueries - Whether to apply to unions of this query. |
leftOuterJoin | void leftOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals)(Code) | | Method to do a left outer join to another table.
Parameters: expr - the left hand expression Parameters: expr2 - the right hand expression Parameters: tblExpr - The table expression Parameters: equals - if the join is applied as filter, if use equals or not equals |
reset | void reset()(Code) | | Allows reseting the compiled expression
|
rightOuterJoin | void rightOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals, boolean unionQueries)(Code) | | Method to do a right outer join to another table, and optionally apply it
to any unions for this query.
Parameters: expr - the left hand expression Parameters: expr2 - the right hand expression Parameters: tblExpr - The table expression for the table to apply the join Parameters: equals - if the join is applied as filter, if use equals or not equals Parameters: unionQueries - Whether to apply to unions of this query. |
rightOuterJoin | void rightOuterJoin(ScalarExpression expr, ScalarExpression expr2, LogicSetExpression tblExpr, boolean equals)(Code) | | Method to do a right outer join to another table.
Parameters: expr - the left hand expression Parameters: expr2 - the right hand expression Parameters: tblExpr - The table expression for the table to apply the join Parameters: equals - if the join is applied as filter, if use equals or not equals |
select | int[] select(JavaTypeMapping mapping)(Code) | | Select the columns for a mapping
Parameters: mapping - The mapping The index of the columns in the select |
select | int[] select(JavaTypeMapping mapping, boolean unionQueries)(Code) | | select a new column, add to union queries, if unionQueries is true
Parameters: mapping - The mapping Parameters: unionQueries - Whether to add to any union The index of the columns in the select |
select | int[] select(DatastoreIdentifier alias, JavaTypeMapping mapping)(Code) | | Select columns, add to union queries, if unionQueries is true
Parameters: alias - The alias Parameters: mapping - The mapping The index of the columns in the select |
select | int[] select(DatastoreIdentifier alias, JavaTypeMapping mapping, boolean unionQueries)(Code) | | select columns, add to union queries, if unionQueries is true
Parameters: alias - The alias Parameters: mapping - The mapping Parameters: unionQueries - Whether to add to any union The index of the column in the select |
selectDatastoreIdentity | int[] selectDatastoreIdentity(String alias, boolean unionQueries)(Code) | | Select the datastore identity column.
Parameters: alias - Alias to use for this column Parameters: unionQueries - Whether to select the datastore id column of all unioned tables The position of the column in the result set |
selectField | int[] selectField(String fieldName, String alias, boolean unionQueries)(Code) | | Select the column(s) for the specified field in the primary table of the query.
Parameters: fieldName - Name of the field Parameters: alias - Alias to use for these column(s) Parameters: unionQueries - Whether to select the field column(s) of all unioned queries. The position of the columns in the result set. |
selectScalarExpression | int selectScalarExpression(ScalarExpression expr)(Code) | | select an expression; eg: "'Text' as alias"
Parameters: expr - The expression to add to the select statement The index of the expression in the select |
selectScalarExpression | int selectScalarExpression(ScalarExpression expr, boolean unionQueries)(Code) | | select an expression; eg: "'Text' as alias"
Parameters: expr - The expression to add to the select statement Parameters: unionQueries - whether to apply the select in all queries unified by the union clause The index of the expression in the select |
selectVersion | int[] selectVersion(String alias, boolean unionQueries)(Code) | | Select the version column.
Parameters: alias - Alias to use for this column Parameters: unionQueries - Whether to select the version column of all unioned tables The position of the column in the result set |
setCandidateInformation | void setCandidateInformation(Class cls, String alias)(Code) | | Method to set the candidate class and alias in use by the query.
The expression is created with a candidate table, yet this could store more than 1 class.
Additionally the "alias" of the candidate table expression is a DatastoreIdentifier whereas
this alias here is a String form.
Parameters: cls - The candidate class Parameters: alias - The alias |
setDistinctResults | void setDistinctResults(boolean distinctResults)(Code) | | Set whether this statement returns distinct results.
Parameters: distinctResults - Whether we return distinct results |
setExistsSubQuery | void setExistsSubQuery(boolean isExistsSubQuery)(Code) | | Set this query is to be used as a as set for the Exists function.
example WHERE EXISTS( QUERY )
Parameters: isExistsSubQuery - The isExistsSubQuery to set. |
setHaving | void setHaving(BooleanExpression expr)(Code) | | Method to set the having clause of the statement.
Parameters: expr - The having expression |
setOrdering | void setOrdering(ScalarExpression[] exprs, boolean[] descending)(Code) | | Mutator for the ordering criteria.
Parameters: exprs - The expressions to order by Parameters: descending - Whether each expression is ascending/descending |
setParent | void setParent(QueryExpression parentQueryExpr)(Code) | | Sets the parent QueryExpression of this query. In SQL it can be exemplified as
SELECT 1 FROM PARENT WHERE EXISTS (SELECT 1 FROM THIS)
The parent QueryExpression is the nesting SQL.
Parameters: parentQueryExpr - the parent of this query |
setRangeConstraint | void setRangeConstraint(long offset, long count)(Code) | | Method to add a range constraint on any SELECT.
This typically will use LIMIT/OFFSET where they are supported by
the underlying RDBMS.
Parameters: offset - The offset to start from Parameters: count - The number of records to return |
setUpdates | void setUpdates(ScalarExpression[] exprs)(Code) | | set the update condition(s) for the query.
Parameters: exprs - the Boolean expression |
toDeleteStatementText | StatementText toDeleteStatementText()(Code) | | Method to convert the criteria into a delete statement text.
The StatementText |
toStatementText | StatementText toStatementText(boolean lock)(Code) | | Method to convert the criteria into the statement text.
Parameters: lock - whether to lock the instances using this statement The StatementText |
toUpdateStatementText | StatementText toUpdateStatementText()(Code) | | Method to convert the criteria into an update statement text.
The StatementText |
union | void union(QueryExpression qe)(Code) | | Union two QueryExpressions this and qe .
Both QueryExpressions must have the same ScalarExpressions selected,
and they must be in the same select order.
valid:
e.g. a) fieldA, fieldB, fieldE, fieldC
b) fieldA, fieldB, fieldE, fieldC
invalid:
e.g. a) fieldA, fieldE, fieldB, fieldC
b) fieldA, fieldB, fieldE, fieldC
Parameters: qe - the QueryExpression |
|
|