Interface TokenQuery
- All Superinterfaces:
- TokenSubQuery
- All Known Implementing Classes:
- TokenQueryImpl,- TokenQueryJooq
ValqueriesQuery that is not based on a specific model class. Useful for migrations.- 
Method SummaryModifier and TypeMethodDescriptionand(Consumer<TokenSubQuery> andGroup) Add an AND group to your query.longcount()Count the rows matching the querydelete()Delete the rows matching the query.Match if the value of a field equals the specified value.default TokenQueryMatch if the value of a field equals the specified value.Match if the value of a field is greater than the specified value.default TokenQueryMatch if the value of a field is greater than the specified value.Match if the value of a field is greater than or equal to the specified value.default TokenQueryMatch if the value of a field is greater than or equal to the specified value.Match if the value of a field is in the specified collection of values.in(Token field, Collection<?> values) Match if the value of a field is in the specified collection of values.default TokenQueryMatch if the value of a field is in the specified collection of values.default TokenQueryin(String field, Collection<?> values) Match if the value of a field is in the specified collection of values.Match if the value of a field is not null.default TokenQueryMatch if the value of a field is not null.Match if the value of a field is null.default TokenQueryMatch if the value of a field is null.Match if the value of a field matches the specified pattern.default TokenQueryMatch if the value of a field matches the specified pattern.limit(int limit) Limit the results to the given number of rows.limit(int offset, int limit) Limit the results to the given number of rows, starting at the given offset.Match if the value of a field is less than the specified value.default TokenQueryMatch if the value of a field is less than the specified value.Match if the value of a field is less than or equal to the specified value.default TokenQueryMatch if the value of a field is less than or equal to the specified value.Match if the value of a field does not equal the specified value.default TokenQueryMatch if the value of a field does not equal the specified value.Match if the value of a field does not match the specified pattern.default TokenQueryMatch if the value of a field does not match the specified pattern.or(Consumer<TokenSubQuery> orGroup) Add an OR group to your query.<R> List<R>select(IRowMapper<R> rowMapper) Select the rows matching the query.sortAscending(Token field) Sort the results by the given field in ascending order.default TokenQuerysortAscending(String field) Sort the results by the given field in ascending order.sortDescending(Token field) Sort the results by the given field in descending order.default TokenQuerysortDescending(String field) Sort the results by the given field in descending order.update(Consumer<TokenUpdate> updater) Update the rows matching the query.
- 
Method Details- 
orAdd an OR group to your query. The statements in this group will be OR-ed together.Example: 
 Will result into the following SQL: `WHERE (name = 'Bob' OR age = 42)`query.or(or -> or.eq(Person::getName, "Bob").eq(Person::getAge, 42));- Specified by:
- orin interface- TokenSubQuery
- Parameters:
- orGroup- uses temporary- TokenSubQueryto specify statements in the OR group
- Returns:
- this query, for chaining
 
- 
andAdd an AND group to your query. The statements in this group will be AND-ed together. Note that statements are AND-ed by default, this method is meant to be used inside an OR group.Example: 
 Will result into the following SQL: `WHERE (name = 'Alice OR (name = 'Bob' AND age = 42))`.query.or(or -> or.eq(Person::getName, "Alice").and(and -> and.eq(Person::getName, "Bob").eq(Person::getAge, 42)));- Specified by:
- andin interface- TokenSubQuery
- Parameters:
- andGroup- uses temporary- TokenSubQueryto specify statements in the AND group
- Returns:
- this query, for chaining
 
- 
eqMatch if the value of a field equals the specified value. If you want to match null values, you have to useisNull(Token).Example: query.eq(Token.get("name"), "Bob")This will match people with the name "Bob". - Specified by:
- eqin interface- TokenSubQuery
- Parameters:
- field- the field to match
- value- the value to match
- Returns:
- the query, for chaining
 
- 
eqMatch if the value of a field equals the specified value. If you want to match null values, you have to useisNull(String).Example: query.eq("name", "Bob")This will match people with the name "Bob". Note: to specify non-standard column names, use eq(Token, Object)withToken.literal(String)- Specified by:
- eqin interface- TokenSubQuery
- Parameters:
- field- the field to match, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the value to match
- Returns:
- the query, for chaining
 
- 
notEqMatch if the value of a field does not equal the specified value. If you want to match non-null values, you have to useisNotNull(Token).Example: query.notEq(Token.get("name"), "Bob")This will match people whose name is not "Bob". - Specified by:
- notEqin interface- TokenSubQuery
- Parameters:
- field- the field to match
- value- the value to match
- Returns:
- the query, for chaining
 
- 
notEqMatch if the value of a field does not equal the specified value. If you want to match non-null values, you have to useisNotNull(String).Example: query.notEq("name", "Bob")This will match people whose name is not "Bob". Note: to specify non-standard column names, use notEq(Token, Object)withToken.literal(String)- Specified by:
- notEqin interface- TokenSubQuery
- Parameters:
- field- the field to match, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the value to match
- Returns:
- the query, for chaining
 
- 
inMatch if the value of a field is in the specified collection of values.Example: query.in(Token.get("name"), List.of("Bob", "Alice"))This will match people with the name "Bob" or "Alice". - Specified by:
- inin interface- TokenSubQuery
- Parameters:
- field- the field to match
- values- the values to match
- Returns:
- the query, for chaining
 
- 
inMatch if the value of a field is in the specified collection of values.Example: query.in("name", List.of("Bob", "Alice"))This will match people with the name "Bob" or "Alice". Note: to specify non-standard column names, use in(Token, Collection)withToken.literal(String)- Specified by:
- inin interface- TokenSubQuery
- Parameters:
- field- the field to match, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- values- the values to match
- Returns:
- the query, for chaining
 
- 
inMatch if the value of a field is in the specified collection of values.Example: query.in(Token.get("name"), "Bob", "Alice")This will match people with the name "Bob" or "Alice". - Specified by:
- inin interface- TokenSubQuery
- Parameters:
- field- the field to match
- values- the values to match
- Returns:
- the query, for chaining
 
- 
inMatch if the value of a field is in the specified collection of values.Example: query.in("name", "Bob", "Alice")This will match people with the name "Bob" or "Alice". Note: to specify non-standard column names, use in(Token, Object...)withToken.literal(String)- Specified by:
- inin interface- TokenSubQuery
- Parameters:
- field- the field to match, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- values- the values to match
- Returns:
- the query, for chaining
 
- 
likeMatch if the value of a field matches the specified pattern.Example: query.like(Token.get("name"), "%ed")This will match people whose name ends with "ed". - Specified by:
- likein interface- TokenSubQuery
- Parameters:
- field- the field to match
- value- the pattern to match
- Returns:
- the query, for chaining
 
- 
likeMatch if the value of a field matches the specified pattern.Example: query.like("name", "%ed")This will match people whose name ends with "ed". Note: to specify non-standard column names, use like(Token, String)withToken.literal(String)- Specified by:
- likein interface- TokenSubQuery
- Parameters:
- field- the field to match, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the pattern to match
- Returns:
- the query, for chaining
 
- 
notLikeMatch if the value of a field does not match the specified pattern.Example: query.notLike(Token.get("name"), "%ed")This will match people whose name does not end with "ed". - Specified by:
- notLikein interface- TokenSubQuery
- Parameters:
- field- the field to match
- value- the pattern to match
- Returns:
- the query, for chaining
 
- 
notLikeMatch if the value of a field does not match the specified pattern.Example: query.notLike("name", "%ed")This will match people whose name does not end with "ed". Note: to specify non-standard column names, use notLike(Token, String)withToken.literal(String)- Specified by:
- notLikein interface- TokenSubQuery
- Parameters:
- field- the field to match, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the pattern to match
- Returns:
- the query, for chaining
 
- 
gtMatch if the value of a field is greater than the specified value.Example: query.gt(Token.get("age"), 18)This will match people older than 18. - Specified by:
- gtin interface- TokenSubQuery
- Parameters:
- field- the field to compare
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
gtMatch if the value of a field is greater than the specified value.Example: query.gt("age", 18)This will match people older than 18. Note: to specify non-standard column names, use gt(Token, Object)withToken.literal(String)- Specified by:
- gtin interface- TokenSubQuery
- Parameters:
- field- the field to compare, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
gteMatch if the value of a field is greater than or equal to the specified value.Example: query.gte(Token.get("age"), 18)This will match people 18 or older. - Specified by:
- gtein interface- TokenSubQuery
- Parameters:
- field- the field to compare
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
gteMatch if the value of a field is greater than or equal to the specified value.Example: query.gte("age", 18)This will match people 18 or older. Note: to specify non-standard column names, use gte(Token, Object)withToken.literal(String)- Specified by:
- gtein interface- TokenSubQuery
- Parameters:
- field- the field to compare, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
ltMatch if the value of a field is less than the specified value.Example: query.lt(Token.get("age"), 18)This will match people younger than 18. - Specified by:
- ltin interface- TokenSubQuery
- Parameters:
- field- the field to compare
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
ltMatch if the value of a field is less than the specified value.Example: query.lt("age", 18)This will match people younger than 18. Note: to specify non-standard column names, use lt(Token, Object)withToken.literal(String)- Specified by:
- ltin interface- TokenSubQuery
- Parameters:
- field- the field to compare, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
lteMatch if the value of a field is less than or equal to the specified value.Example: query.lte(Token.get("age"), 18)This will match people 18 or younger. - Specified by:
- ltein interface- TokenSubQuery
- Parameters:
- field- the field to compare
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
lteMatch if the value of a field is less than or equal to the specified value.Example: query.lte("age", 18)This will match people 18 or younger. Note: to specify non-standard column names, use lte(Token, Object)withToken.literal(String)- Specified by:
- ltein interface- TokenSubQuery
- Parameters:
- field- the field to compare, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- value- the value to compare to
- Returns:
- the query, for chaining
 
- 
isNullMatch if the value of a field is null.Example: query.isNull(Token.get("email"))This will match people whose email is null. Note: if the model class has fields of primitive type, they won't be null, even if the database contains NULL values. In this case isNull will still match correctly based on the values in the database. - Specified by:
- isNullin interface- TokenSubQuery
- Parameters:
- field- the field to check
- Returns:
- the query, for chaining
 
- 
isNullMatch if the value of a field is null.Example: query.isNull("email")This will match people whose email is null. Note: if the model class has fields of primitive type, they won't be null, even if the database contains NULL values. In this case isNull will still match correctly based on the values in the database. Note: to specify non-standard column names, use isNull(Token)withToken.literal(String)- Specified by:
- isNullin interface- TokenSubQuery
- Parameters:
- field- the field to check, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- Returns:
- the query, for chaining
 
- 
isNotNullMatch if the value of a field is not null.Example: query.isNotNull(Token.get("email"))This will match people whose email is not null. Note: if the model class has fields of primitive type, they won't be null, even if the database contains NULL values. In this case isNotNull will still match correctly based on the values in the database. - Specified by:
- isNotNullin interface- TokenSubQuery
- Parameters:
- field- the field to check
- Returns:
- the query, for chaining
 
- 
isNotNullMatch if the value of a field is not null.Example: query.isNotNull("email")This will match people whose email is not null. Note: if the model class has fields of primitive type, they won't be null, even if the database contains NULL values. In this case isNotNull will still match correctly based on the values in the database. Note: to specify non-standard column names, use isNotNull(Token)withToken.literal(String)- Specified by:
- isNotNullin interface- TokenSubQuery
- Parameters:
- field- the field to check, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- Returns:
- the query, for chaining
 
- 
sortAscendingSort the results by the given field in ascending order.Example: query.sortAscending(Person::getAge)This will sort the results by age in ascending order. - Parameters:
- field- the filed to sort by
- Returns:
- the query, for chaining
 
- 
sortAscendingSort the results by the given field in ascending order.Example: query.sortAscending("age")This will sort the results by age in ascending order. Note: to specify non-standard column names, use sortAscending(Token)withToken.literal(String)- Parameters:
- field- the filed to sort by, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- Returns:
- the query, for chaining
 
- 
sortDescendingSort the results by the given field in descending order.Example: query.sortDescending(Person::getAge)This will sort the results by age in descending order. - Parameters:
- field- the filed to sort by
- Returns:
- the query, for chaining
 
- 
sortDescendingSort the results by the given field in descending order.Example: query.sortDescending("age")This will sort the results by age in descending order. Note: to specify non-standard column names, use sortDescending(Token)withToken.literal(String)- Parameters:
- field- the filed to sort by, will be tokenized, for example "fullName" will reference column "full_name" for MariaDb
- Returns:
- the query, for chaining
 
- 
limitLimit the results to the given number of rows.Example: query.limit(10)This will return the first 10 rows. - Parameters:
- limit- the number of rows to return
- Returns:
- the query, for chaining
- See Also:
 
- 
limitLimit the results to the given number of rows, starting at the given offset.Offset is 0-based (the first row is 0). Offset is inclusive, limit is the size of the returned collection. Example: query.limit(10, 20)This will return rows 10, 11, 12, ..., 29. - Parameters:
- offset- the offset to start at
- limit- the number of rows to return
- Returns:
- the query, for chaining
 
- 
selectSelect the rows matching the query.This is a terminal operation. As such, the query should not be reused after this method is called. - Type Parameters:
- R- the type of the objects returned by the mapper
- Parameters:
- rowMapper- the mapper converting each row of the result into an object that will be returned
- Returns:
- list of objects returned by the mapper
 
- 
countlong count()Count the rows matching the query- Returns:
- the number of rows matching the query
 
- 
updateUpdate the rows matching the query.This is a terminal operation. As such, the query should not be reused after this method is called. - Parameters:
- updater- uses the- TokenUpdateto specify the update operation
- Returns:
- a CrudRepository.CrudUpdateResultwith the number of rows affected
 
- 
deleteCrudRepository.CrudUpdateResult delete()Delete the rows matching the query.This is a terminal operation. As such, the query should not be reused after this method is called. - Returns:
- a CrudRepository.CrudUpdateResultwith the number of rows affected
 
 
-