public abstract class SelectorBase<S extends SelectorBase<S,Q>,Q extends IBaseQuery<?,Q>> extends AggregateSegment<S,Q,S>
aggregate, and, avg, count, group_concat, max, min, origin, sumcurrent, wrapper| 限定符 | 构造器和说明 |
|---|---|
protected |
SelectorBase(Q query) |
protected |
SelectorBase(S origin,
IAggregate aggregate) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected S |
apply() |
S |
apply(FieldMapping column,
FieldMapping... columns)
增加查询字段
|
S |
apply(FieldPredicate predicate)
过滤查询的字段信息
例1: 只要 java 字段名以 "test" 开头的 -> select(i -> i.getProperty().startsWith("test"))
例2: 要全部字段 -> select(i -> true)
例3: 只要字符串类型字段 -> select(i -> i.getPropertyType instance String)
|
<E> S |
apply(IGetter<E> getter,
IGetter<E>... getters)
增加查询字段
|
S |
apply(String column,
String... columns)
增加查询字段
|
S |
applyAs(FieldMapping column,
String alias)
增加带别名的查询字段
|
<E> S |
applyAs(IGetter<E> getter,
String alias)
增加带别名的查询字段
|
S |
applyAs(String column,
String alias)
增加带别名的查询字段
|
S |
applyField(String field,
String... fields)
增加查询字段
|
S |
applyFieldAs(String field,
String alias)
增加带别名的查询字段
|
S |
applyFunc(IAggregate func,
FieldMapping column,
String alias) |
<E> S |
applyFunc(IAggregate func,
IGetter<E> getter,
String alias) |
S |
applyFunc(IAggregate func,
String column,
String alias) |
S |
applyFuncByField(IAggregate func,
String field,
String alias) |
S |
count(String alias)
count(*) as alias
|
Q |
exclude(FieldMapping... columns)
排除查询字段, 无需end()结尾
|
<E> Q |
exclude(IGetter<E>... columns)
排除查询字段, 无需end()结尾
|
Q |
exclude(String... columns)
排除查询字段(按数据库字段名称), 无需end()结尾
|
Q |
excludeField(String... columns)
排除查询字段(按数据库字段名称), 无需end()结尾
|
protected S |
process(FieldMapping field,
String alias)
对当前字段处理,别名处理
|
aggregateSegment, getOriginbyEntity, byExclude, end, fieldMapping, get, setprotected SelectorBase(Q query)
protected SelectorBase(S origin, IAggregate aggregate)
public S applyField(String field, String... fields)
fields - 查询字段(Entity属性名称)public S apply(FieldMapping column, FieldMapping... columns)
columns - 查询字段public <E> S apply(IGetter<E> getter, IGetter<E>... getters)
getters - 查询字段public S applyAs(String column, String alias)
column - 查询字段alias - 别名, 为空时没有别名public <E> S applyAs(IGetter<E> getter, String alias)
getter - 查询字段alias - 别名, 为空时没有别名public S applyFieldAs(String field, String alias)
field - 查询字段(Entity属性名)alias - 别名, 为空时没有别名public S applyAs(FieldMapping column, String alias)
column - 查询字段alias - 别名, 为空时没有别名public Q exclude(String... columns)
columns - 要排除的查询字段public Q excludeField(String... columns)
columns - 要排除的查询字段public <E> Q exclude(IGetter<E>... columns)
columns - 要排除的查询字段public Q exclude(FieldMapping... columns)
columns - 要排除的查询字段public S applyFunc(IAggregate func, String column, String alias)
public S applyFuncByField(IAggregate func, String field, String alias)
public <E> S applyFunc(IAggregate func, IGetter<E> getter, String alias)
public S applyFunc(IAggregate func, FieldMapping column, String alias)
public S apply(FieldPredicate predicate)
例1: 只要 java 字段名以 "test" 开头的 -> select(i -> i.getProperty().startsWith("test"))
例2: 要全部字段 -> select(i -> true)
例3: 只要字符串类型字段 -> select(i -> i.getPropertyType instance String)
predicate - 过滤方式 (主键除外!)protected S apply()
apply 在类中 BaseSegment<S extends SelectorBase<S,Q>,Q extends IBaseQuery<?,Q>>protected S process(FieldMapping field, String alias)
field - 字段alias - 别名Copyright © 2022. All rights reserved.