Interface UserQuery.IFilterLink
-
- All Known Subinterfaces:
UserQuery.IFilterQuery
- All Known Implementing Classes:
UserQuery.FilterLink
,UserQuery.FilterQuery
- Enclosing class:
- UserQuery
public static interface UserQuery.IFilterLink
Links a where condition with another.- API:
- This is a public API.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description UserQuery.FilterQuery
and()
Adds an AND statement to thewhere
condition.UserQuery.FilterLink
and(UserQuery subQuery)
Adds and AND statement with the given filtersubQuery
.UserQuery.FilterQuery
andOverall()
Adds an AND statement to the wholewhere
condition configured before.UserQuery.FilterLink
andOverall(UserQuery subQuery)
Adds and AND statement with the given filtersubQuery
to the wholewhere
condition configured before.UserQuery.FilterQuery
or()
Adds an OR statement to thewhere
condition.UserQuery.FilterLink
or(UserQuery subQuery)
Adds and OR statement with the given filtersubQuery
.
Only thewhere
condition of the givensubQuery
is considered.
-
-
-
Method Detail
-
and
UserQuery.FilterQuery and()
Adds an AND statement to the
where
condition.
Must be followed by other query conditions.Note that
and
operations are always evaluated beforeor
operations, e.g. the expressionA OR B AND C
is evaluated toA OR (B AND C)
. If you need to get(A OR B) AND C
, then use theandOverall
method.Example
A OR (B AND C)
:UserQuery.create().description().isEqual("A").or().description().isEqual("B") .and().name().isEqual("C");
SQL part:
AND
- Returns:
- query for further composition
- See Also:
andOverall()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
and
UserQuery.FilterLink and(UserQuery subQuery)
Adds and AND statement with the given filter
subQuery
. Only thewhere
condition of the givensubQuery
is considered. All other parts are ignored. The wholewhere
condition of the given filtersubQuery
is and-ed to the query as one term with brackets around it.Note that
and
operations are always evaluated beforeor
operations, e.g. the expressionA OR B AND (subQuery)
is evaluated toA OR (B AND (subQuery))
. If you need to get(A OR B) AND (subQuery)
, then use theandOverall
method.Example
A AND (B OR C)
:UserQuery.create().description().isEqual("A") .and(UserQuery.create().name().isEqual("B").or().name().isEqual("C"));
SQL part:
AND([subQueryWhereClause])
- Parameters:
subQuery
- query with a set of where conditions.- Returns:
- query for further composition
- Throws:
IllegalArgumentException
- when the query parameter is the same instance or null.- See Also:
andOverall(UserQuery)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
andOverall
UserQuery.FilterQuery andOverall()
Adds an AND statement to the whole
where
condition configured before.
Must be followed by other query conditions.Example
(A OR B) AND C
:UserQuery.create().description().isEqual("A").or().description().isEqual("B") .andOverall().name().isEqual("C");
- Returns:
- query for further composition
- See Also:
and()
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
andOverall
UserQuery.FilterLink andOverall(UserQuery subQuery)
Adds and AND statement with the given filter
subQuery
to the wholewhere
condition configured before. Only thewhere
condition of the givensubQuery
is considered. All other parts are ignored. The wholewhere
condition of the given filtersubQuery
is and-ed to the query as one term with brackets around it.Example (A OR B) AND (C OR D):
UserQuery.create().description().isEqual("A").or().description().isEqual("B") .andOverall(UserQuery.create().name().isEqual("C").or().name().isEqual("D"));
SQL part:
AND([subQueryWhereClause])
- Parameters:
subQuery
- query with a set of where conditions.- Returns:
- query for further composition
- Throws:
IllegalArgumentException
- when the query parameter is the same instance or null.- See Also:
and(UserQuery)
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
or
UserQuery.FilterQuery or()
Adds an OR statement to the
where
condition.
Must be followed by other query conditions.Note that
and
operations are evaluated beforeor
operations. E.g. the expressionA and B or C
is evaluated like(A and B) or C
SQL part:
OR
- Returns:
- query for further composition
- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
or
UserQuery.FilterLink or(UserQuery subQuery)
Adds and OR statement with the given filter
subQuery
.
Only thewhere
condition of the givensubQuery
is considered. All other parts are ignored. The wholewhere
condition of the given filtersubQuery
is or-ed to the query as one term with brackets around it.Note that
and
operations are always evaluated beforeor
operations, e.g. the expressionA AND B OR C
is evaluated to(A AND B) OR C
. If you need to getA AND (B OR C)
, then use this method to add a sub query (B OR C
) with aAND
operation to the current query (A).SQL part:
OR([subQueryWhereClause])
- Parameters:
subQuery
- query with a set of where conditions.- Returns:
- query for further composition
- Throws:
IllegalArgumentException
- when the query parameter is the same instance or null.- API:
- This public API is available in IvyScript and Java. It has the visibility EXPERT.
-
-