-
- All Implemented Interfaces:
-
query.BasedQuery,query.select.SelectQuery
public final class Select extends SelectQueryImpl
select语句dsl类
-
-
Field Summary
Fields Modifier and Type Field Description private DBdbprivate Connectionconnprivate BooleanisTransactionprivate DBConnectiondbConnection
-
Constructor Summary
Constructors Constructor Description Select(DB db)Select(DB db, Connection conn, Boolean isTransaction, DBConnection dbConnection)
-
Method Summary
Modifier and Type Method Description final DBgetDb()final UnitsetDb(DB db)ConnectiongetConn()UnitsetConn(Connection conn)BooleangetIsTransaction()UnitsetIsTransaction(Boolean isTransaction)DBConnectiongetDbConnection()UnitsetDbConnection(DBConnection dbConnection)final SqlSelectgetSqlSelect()获取sql语法树 final Selectfrom(String table, String alias)from子句 例如:Select(). final Selectfrom(String table)from子句 例如:Select() from "t1" final Selectfrom(SelectQuery select, String alias)from子句(子查询) 例如:Select(). final Selectfrom(SelectQuery select)from子句(子查询) 例如:Select() from (Select() from "table1", "t1") final <T extends TableSchema> Selectfrom(T table, String alias)from子句 例如:Select(). final <T extends TableSchema> Selectfrom(T table)from子句 例如:Select() from Table final SelectfromLateral(SelectQuery select)from lateral子句 例如:Select() fromLateral (Select() from "table1", "t1") final Selectalias(String name)给表起别名(如果有join,那么会给最近的一张表起别名) 例如:Select() from Table alias "t1" final Selectalias(String tableName, String columnName)给表和列起别名(如果有join,那么会给最近的一张表起别名),会生成FROM table_name table_alias(column1_alias, column2_alias) 形式的sql 例如:Select().from(Table). final Selectdistinct()distinct子句 final Selectselect(Query query)select子句 例如:Select(). final Selectselect(List<Query> query)select子句(中缀调用) 例如:Select() select listOf(column("c1"), column("c2")) final Selectselect(Query query)select子句(中缀调用) 例如:Select() select count() final Selectselect()select (后续如果还有调用其他select函数,会替换掉查询列表里的) 例如:Select(). final Selectselect(String columns)select子句(字段名中如果有.会被识别为表名+字段名的格式,*会被识别为通配符) 例如:Select().select("c1", "t1. final Selectinvoke(List<Query> query)operator invoke final Selectinvoke(Query query)operator invoke final SelectselectDistinct(List<Query> query)select distinct子句 final SelectselectDistinct(Query query)select distinct子句(中缀调用) final Selectwhere(Query query)where子句(如果有多个where调用,会使用AND拼接条件) 例如:Select() from Table where (Table. final Selectwhere(Function0<Boolean> test, Query query)where子句(第一个参数的lambda返回值为true时,表达式会被拼接到where子句中) final Selectwhere(Boolean test, Query query)where子句(第一个参数的值为true时,表达式会被拼接到where子句中) final Selecthaving(Query query)having子句(使用方式请参考where) final SelectorderBy(OrderBy orderBy)order by子句(使用表达式类型的.asc()或.desc()生成排序规则传入) 例如:Select().from(Table).orderBy(Table.c1.asc(), Table.c2. final SelectorderBy(List<OrderBy> orderByList)中缀调用order by子句(使用表达式类型的.asc()或.desc()生成排序规则传入) 例如:Select() from Table orderBy listOf(Table.c1.asc(), Table.c2. final SelectorderBy(OrderBy orderBy)中缀调用order by子句(使用表达式类型的.asc()或.desc()生成排序规则传入) 例如:Select() from Table orderBy Table.c1. final SelectorderByAsc(String columns)order by子句(正序),与其他order by类函数可以组合调用 例如:Select().from(Table). final SelectorderByAsc(Query columns)order by子句(正序),与其他order by类函数可以组合调用 例如:Select().from(Table). final SelectorderByAsc(List<Query> columns)中缀调用order by子句(正序),与其他order by类函数可以组合调用 例如:Select() from Table orderByAsc listOf(column("c1"), column("c2")) final SelectorderByAsc(Query column)中缀调用order by子句(正序),与其他order by类函数可以组合调用 例如:Select() from Table orderByAsc column("c1") final SelectorderByDesc(String columns)order by子句(倒序),与其他order by类函数可以组合调用 例如:Select().from(Table). final SelectorderByDesc(Query columns)order by子句(倒序),与其他order by类函数可以组合调用 例如:Select().from(Table). final SelectorderByDesc(List<Query> columns)中缀调用order by子句(倒序),与其他order by类函数可以组合调用 例如:Select() from Table orderByDesc listOf(column("c1"), column("c2")) final SelectorderByDesc(Query column)中缀调用order by子句(倒序),与其他order by类函数可以组合调用 例如:Select() from Table orderByDesc column("c1") final Selectlimit(Integer count, Integer offset)limit子句 例如:Select().from(Table). final Selectlimit(Integer count)中缀调用limit子句(如果后续没有offset函数调用,那么偏移量为0) 例如:Select() from Table limit 10 final Selectoffset(Integer offset)中缀调用offset子句(需要保证之前有limit函数调用,否则会产生异常) 例如:Select() from Table limit 10 offset 100 final SelectgroupBy(Query columns)group by子句 例如:Select().from(Table).groupBy(Table.c1, Table. final SelectgroupBy(Query column)中缀调用group by子句 例如:Select() from Table groupBy Table. final SelectgroupBy(List<Query> columns)中缀调用group by子句 例如:Select() from Table groupBy listOf(Table.c1, Table. final SelectgroupBy(String columns)group by子句 例如:Select().from(Table). final Selectjoin(String table)join子句 例如:Select() from Table1 join "t2" final Selectjoin(TableSchema table)join子句 例如:Select() from Table1 join Table2 final Selectjoin(SelectQuery table)join子句(子查询) 例如:Select() from Table1 join (Select() from Table2) final Selecton(Query on)on子句(需要保证之前调用了join类函数,否则会产生异常) 例如:Select() from Table1 join Table2 on (Table1.c1 eq Table2. final SelectjoinLateral(SelectQuery table)join lateral子句 例如:Select() from Table1 joinLateral (Select() from Table2) final SelectleftJoin(String table)left join子句 例如:Select() from Table1 leftJoin "t2" final SelectleftJoin(TableSchema table)left join子句 例如:Select() from Table1 leftJoin Table2 final SelectleftJoin(SelectQuery table)left join子句(子查询) 例如:Select() from Table1 leftJoin (Select() from Table2) final SelectleftJoinLateral(SelectQuery table)left join lateral子句 例如:Select() from Table1 leftJoinLateral (Select() from Table2) final SelectrightJoin(String table)right join子句 例如:Select() from Table1 rightJoin "t2" final SelectrightJoin(TableSchema table)right join子句 例如:Select() from Table1 rightJoin Table2 final SelectrightJoin(SelectQuery table)right join子句(子查询) 例如:Select() from Table1 rightJoin (Select() from Table2) final SelectrightJoinLateral(SelectQuery table)right join lateral子句 例如:Select() from Table1 rightJoinLateral (Select() from Table2) final SelectinnerJoin(String table)inner join子句 例如:Select() from Table1 innerJoin "t2" final SelectinnerJoin(TableSchema table)inner join子句 例如:Select() from Table1 innerJoin Table2 final SelectinnerJoin(SelectQuery table)inner join子句(子查询) 例如:Select() from Table1 innerJoin (Select() from Table2) final SelectinnerJoinLateral(SelectQuery table)inner join lateral子句 例如:Select() from Table1 innerJoinLateral (Select() from Table2) final SelectcrossJoin(String table)cross join子句 例如:Select() from Table1 crossJoin "t2" final SelectcrossJoin(TableSchema table)cross join子句 例如:Select() from Table1 crossJoin Table2 final SelectcrossJoin(SelectQuery table)cross join子句(子查询) 例如:Select() from Table1 crossJoin (Select() from Table2) final SelectcrossJoinLateral(SelectQuery table)cross join lateral子句 例如:Select() from Table1 crossJoinLateral (Select() from Table2) final SelectfullJoin(String table)full join子句 例如:Select() from Table1 fullJoin "t2" final SelectfullJoin(TableSchema table)full join子句 例如:Select() from Table1 fullJoin Table2 final SelectfullJoin(SelectQuery table)full join子句(子查询) 例如:Select() from Table1 fullJoin (Select() from Table2) final SelectfullJoinLateral(SelectQuery table)full join lateral子句 例如:Select() from Table1 fullJoinLateral (Select() from Table2) final SelectforUpdate()查询加锁 Stringsql()生成sql语句 final StringfetchCountSql()获取查询总数sql(会复制一个查询副本,并去掉limit与order by信息) final StringpageSql(Integer pageSize, Integer pageNumber)获取分页查询sql(会复制一个查询副本,并根据参数替换limit信息) SqlSelectQuerygetSelect()获取sql语法树 DBgetDbType()获取数据库类型 final <T extends Any> Tfind(Function1<List<Map<String, Object>>, List<T>> bind)获取一条数据 final <T extends Any> Tfind(Class<T> clazz)获取一条数据 final <T extends Any> Tfind()获取一条数据 final Map<String, Object>findMap()获取一条数据 LongfetchCount()获取总数(会复制一个查询副本,并去掉limit与order by信息) final <T extends Any> Page<T>page(Integer pageSize, Integer pageNumber, Boolean needCount, Function1<List<Map<String, Object>>, List<T>> bind)获取分页结果(会复制一个查询副本,并根据参数替换limit信息) final <T extends Any> Page<T>page(Class<T> clazz, Integer pageSize, Integer pageNumber, Boolean needCount)获取分页结果(会复制一个查询副本,并根据参数替换limit信息) final <T extends Any> Page<T>page(Integer pageSize, Integer pageNumber, Boolean needCount)获取分页结果(会复制一个查询副本,并根据参数替换limit信息) final Page<Map<String, Object>>pageMap(Integer pageSize, Integer pageNumber, Boolean needCount)获取分页结果(会复制一个查询副本,并根据参数替换limit信息) final <T extends Any> List<T>firstPage(OrderBy sort, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)根据排序字段游标排序(首页) final <T extends Any> List<T>firstPage(Class<T> clazz, OrderBy sort, Integer pageSize)根据排序字段游标排序(首页) final <T extends Any> List<T>firstPage(OrderBy sort, Integer pageSize)根据排序字段游标排序(首页) final List<Map<String, Object>>firstPageMap(OrderBy sort, Integer pageSize)根据排序字段游标排序(首页) final <T extends Any> List<T>lastPage(OrderBy sort, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)根据排序字段游标排序(尾页) final <T extends Any> List<T>lastPage(Class<T> clazz, OrderBy sort, Integer pageSize)根据排序字段游标排序(尾页) final <T extends Any> List<T>lastPage(OrderBy sort, Integer pageSize)根据排序字段游标排序(尾页) final List<Map<String, Object>>lastPageMap(OrderBy sort, Integer pageSize)根据排序字段游标排序(尾页) final <T extends Any> List<T>previousPage(OrderBy sort, Object value, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)根据排序字段游标排序(上一页) final <T extends Any> List<T>previousPage(Class<T> clazz, OrderBy sort, Object value, Integer pageSize)根据排序字段游标排序(上一页) final <T extends Any> List<T>previousPage(OrderBy sort, Object value, Integer pageSize)根据排序字段游标排序(上一页) final List<Map<String, Object>>previousPageMap(OrderBy sort, Object value, Integer pageSize)根据排序字段游标排序(上一页) final <T extends Any> List<T>nextPage(OrderBy sort, Object value, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)根据排序字段游标排序(下一页) final <T extends Any> List<T>nextPage(Class<T> clazz, OrderBy sort, Object value, Integer pageSize)根据排序字段游标排序(下一页) final <T extends Any> List<T>nextPage(OrderBy sort, Object value, Integer pageSize)根据排序字段游标排序(下一页) final List<Map<String, Object>>nextPageMap(OrderBy sort, Object value, Integer pageSize)根据排序字段游标排序(下一页) -
Methods inherited from class query.select.Select
bind, bind, except, exist, interSect, query, query, query, queryCount, queryMap, toExpr, toString, union, unionAll -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
Select
Select(DB db)
-
Select
Select(DB db, Connection conn, Boolean isTransaction, DBConnection dbConnection)
-
-
Method Detail
-
getConn
Connection getConn()
-
setConn
Unit setConn(Connection conn)
-
getIsTransaction
Boolean getIsTransaction()
-
setIsTransaction
Unit setIsTransaction(Boolean isTransaction)
-
getDbConnection
DBConnection getDbConnection()
-
setDbConnection
Unit setDbConnection(DBConnection dbConnection)
-
getSqlSelect
final SqlSelect getSqlSelect()
获取sql语法树
-
from
final Select from(String table, String alias)
from子句 例如:Select().from("table1", "t1")
- Parameters:
table- String 表名alias- String?
-
from
final Select from(SelectQuery select, String alias)
from子句(子查询) 例如:Select().from(Select() from "table1", "t1")
- Parameters:
select- SelectQuery 子查询dslalias- String?
-
from
final Select from(SelectQuery select)
from子句(子查询) 例如:Select() from (Select() from "table1", "t1")
- Parameters:
select- SelectQuery 子查询dsl
-
from
final <T extends TableSchema> Select from(T table, String alias)
from子句 例如:Select().from(Table, "t1")
- Parameters:
table- T 实体类伴生对象名alias- String?
-
from
final <T extends TableSchema> Select from(T table)
from子句 例如:Select() from Table
- Parameters:
table- T 实体类伴生对象名
-
fromLateral
final Select fromLateral(SelectQuery select)
from lateral子句 例如:Select() fromLateral (Select() from "table1", "t1")
- Parameters:
select- SelectQuery 子查询dsl
-
alias
final Select alias(String name)
给表起别名(如果有join,那么会给最近的一张表起别名) 例如:Select() from Table alias "t1"
- Parameters:
name- String 表别名
-
alias
final Select alias(String tableName, String columnName)
给表和列起别名(如果有join,那么会给最近的一张表起别名),会生成FROM table_name table_alias(column1_alias, column2_alias) 形式的sql 例如:Select().from(Table).alias("t1", "c1", "c2")
- Parameters:
tableName- String 表别名columnName- Array<out String> 列别名
-
select
final Select select(Query query)
select子句 例如:Select().select(column("c1"), column("c2"))
- Parameters:
query- Array<out Query> 查询的表达式列表
-
select
final Select select(List<Query> query)
select子句(中缀调用) 例如:Select() select listOf(column("c1"), column("c2"))
- Parameters:
query- List<Query> 查询的表达式列表
-
select
final Select select(Query query)
select子句(中缀调用) 例如:Select() select count()
- Parameters:
query- Query 查询的表达式
-
select
final Select select(String columns)
select子句(字段名中如果有.会被识别为表名+字段名的格式,*会被识别为通配符) 例如:Select().select("c1", "t1.c2")
- Parameters:
columns- Array<out String> 字段名
-
selectDistinct
final Select selectDistinct(List<Query> query)
select distinct子句
- Parameters:
query- List<Query> 查询的表达式列表
-
selectDistinct
final Select selectDistinct(Query query)
select distinct子句(中缀调用)
- Parameters:
query- Query 查询的表达式
-
where
final Select where(Query query)
where子句(如果有多个where调用,会使用AND拼接条件) 例如:Select() from Table where (Table.c1 eq 1)
- Parameters:
query- Query where条件中的表达式
-
where
final Select where(Function0<Boolean> test, Query query)
where子句(第一个参数的lambda返回值为true时,表达式会被拼接到where子句中)
- Parameters:
test- Function0<Boolean> 检测表达式query- Query where条件中的表达式
-
where
final Select where(Boolean test, Query query)
where子句(第一个参数的值为true时,表达式会被拼接到where子句中)
- Parameters:
test- Boolean 检测表达式query- Query where条件中的表达式
-
having
final Select having(Query query)
having子句(使用方式请参考where)
- Parameters:
query- Query having条件中的表达式
-
orderBy
final Select orderBy(OrderBy orderBy)
order by子句(使用表达式类型的.asc()或.desc()生成排序规则传入) 例如:Select().from(Table).orderBy(Table.c1.asc(), Table.c2.desc())
- Parameters:
orderBy- Array<out OrderBy> 排序规则列表
-
orderBy
final Select orderBy(List<OrderBy> orderByList)
中缀调用order by子句(使用表达式类型的.asc()或.desc()生成排序规则传入) 例如:Select() from Table orderBy listOf(Table.c1.asc(), Table.c2.desc())
- Parameters:
orderByList- List<OrderBy> 排序规则列表
-
orderBy
final Select orderBy(OrderBy orderBy)
中缀调用order by子句(使用表达式类型的.asc()或.desc()生成排序规则传入) 例如:Select() from Table orderBy Table.c1.asc()
- Parameters:
orderBy- List<OrderBy> 排序规则
-
orderByAsc
final Select orderByAsc(String columns)
order by子句(正序),与其他order by类函数可以组合调用 例如:Select().from(Table).orderByAsc("c1", "c2")
- Parameters:
columns- Array<out String> 字段名列表
-
orderByAsc
final Select orderByAsc(Query columns)
order by子句(正序),与其他order by类函数可以组合调用 例如:Select().from(Table).orderByAsc(column("c1"), column("c2"))
- Parameters:
columns- Array<out Query> 待排序的表达式列表
-
orderByAsc
final Select orderByAsc(List<Query> columns)
中缀调用order by子句(正序),与其他order by类函数可以组合调用 例如:Select() from Table orderByAsc listOf(column("c1"), column("c2"))
- Parameters:
columns- List<Query> 待排序的表达式列表
-
orderByAsc
final Select orderByAsc(Query column)
中缀调用order by子句(正序),与其他order by类函数可以组合调用 例如:Select() from Table orderByAsc column("c1")
- Parameters:
column- Query 待排序的表达式
-
orderByDesc
final Select orderByDesc(String columns)
order by子句(倒序),与其他order by类函数可以组合调用 例如:Select().from(Table).orderByDesc("c1", "c2")
- Parameters:
columns- Array<out String> 字段名列表
-
orderByDesc
final Select orderByDesc(Query columns)
order by子句(倒序),与其他order by类函数可以组合调用 例如:Select().from(Table).orderByDesc(column("c1"), column("c2"))
- Parameters:
columns- Array<out Query> 待排序的表达式列表
-
orderByDesc
final Select orderByDesc(List<Query> columns)
中缀调用order by子句(倒序),与其他order by类函数可以组合调用 例如:Select() from Table orderByDesc listOf(column("c1"), column("c2"))
- Parameters:
columns- List<Query> 待排序的表达式列表
-
orderByDesc
final Select orderByDesc(Query column)
中缀调用order by子句(倒序),与其他order by类函数可以组合调用 例如:Select() from Table orderByDesc column("c1")
- Parameters:
column- Query 待排序的表达式
-
limit
final Select limit(Integer count, Integer offset)
limit子句 例如:Select().from(Table).limit(10, 100)
- Parameters:
count- Int 条数offset- Int 偏移量
-
limit
final Select limit(Integer count)
中缀调用limit子句(如果后续没有offset函数调用,那么偏移量为0) 例如:Select() from Table limit 10
- Parameters:
count- Int 条数
-
offset
final Select offset(Integer offset)
中缀调用offset子句(需要保证之前有limit函数调用,否则会产生异常) 例如:Select() from Table limit 10 offset 100
- Parameters:
offset- Int 偏移量
-
groupBy
final Select groupBy(Query columns)
group by子句 例如:Select().from(Table).groupBy(Table.c1, Table.c2)
- Parameters:
columns- Array<out Query> 分组表达式列表
-
groupBy
final Select groupBy(Query column)
中缀调用group by子句 例如:Select() from Table groupBy Table.c1
- Parameters:
column- Query 分组表达式
-
groupBy
final Select groupBy(List<Query> columns)
中缀调用group by子句 例如:Select() from Table groupBy listOf(Table.c1, Table.c2)
- Parameters:
columns- List<Query> 分组表达式列表
-
groupBy
final Select groupBy(String columns)
group by子句 例如:Select().from(Table).groupBy("c1", "c2")
- Parameters:
columns- Array<out String> 分组列名列表
-
join
final Select join(String table)
join子句 例如:Select() from Table1 join "t2"
- Parameters:
table- String 表名
-
join
final Select join(TableSchema table)
join子句 例如:Select() from Table1 join Table2
- Parameters:
table- TableSchema 实体类伴生对象名
-
join
final Select join(SelectQuery table)
join子句(子查询) 例如:Select() from Table1 join (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
on
final Select on(Query on)
on子句(需要保证之前调用了join类函数,否则会产生异常) 例如:Select() from Table1 join Table2 on (Table1.c1 eq Table2.c2)
- Parameters:
on- Query 连接条件表达式
-
joinLateral
final Select joinLateral(SelectQuery table)
join lateral子句 例如:Select() from Table1 joinLateral (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
leftJoin
final Select leftJoin(String table)
left join子句 例如:Select() from Table1 leftJoin "t2"
- Parameters:
table- String 表名
-
leftJoin
final Select leftJoin(TableSchema table)
left join子句 例如:Select() from Table1 leftJoin Table2
- Parameters:
table- TableSchema 实体类伴生对象名
-
leftJoin
final Select leftJoin(SelectQuery table)
left join子句(子查询) 例如:Select() from Table1 leftJoin (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
leftJoinLateral
final Select leftJoinLateral(SelectQuery table)
left join lateral子句 例如:Select() from Table1 leftJoinLateral (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
rightJoin
final Select rightJoin(String table)
right join子句 例如:Select() from Table1 rightJoin "t2"
- Parameters:
table- String 表名
-
rightJoin
final Select rightJoin(TableSchema table)
right join子句 例如:Select() from Table1 rightJoin Table2
- Parameters:
table- TableSchema 实体类伴生对象名
-
rightJoin
final Select rightJoin(SelectQuery table)
right join子句(子查询) 例如:Select() from Table1 rightJoin (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
rightJoinLateral
final Select rightJoinLateral(SelectQuery table)
right join lateral子句 例如:Select() from Table1 rightJoinLateral (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
innerJoin
final Select innerJoin(String table)
inner join子句 例如:Select() from Table1 innerJoin "t2"
- Parameters:
table- String 表名
-
innerJoin
final Select innerJoin(TableSchema table)
inner join子句 例如:Select() from Table1 innerJoin Table2
- Parameters:
table- TableSchema 实体类伴生对象名
-
innerJoin
final Select innerJoin(SelectQuery table)
inner join子句(子查询) 例如:Select() from Table1 innerJoin (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
innerJoinLateral
final Select innerJoinLateral(SelectQuery table)
inner join lateral子句 例如:Select() from Table1 innerJoinLateral (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
crossJoin
final Select crossJoin(String table)
cross join子句 例如:Select() from Table1 crossJoin "t2"
- Parameters:
table- String 表名
-
crossJoin
final Select crossJoin(TableSchema table)
cross join子句 例如:Select() from Table1 crossJoin Table2
- Parameters:
table- TableSchema 实体类伴生对象名
-
crossJoin
final Select crossJoin(SelectQuery table)
cross join子句(子查询) 例如:Select() from Table1 crossJoin (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
crossJoinLateral
final Select crossJoinLateral(SelectQuery table)
cross join lateral子句 例如:Select() from Table1 crossJoinLateral (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
fullJoin
final Select fullJoin(String table)
full join子句 例如:Select() from Table1 fullJoin "t2"
- Parameters:
table- String 表名
-
fullJoin
final Select fullJoin(TableSchema table)
full join子句 例如:Select() from Table1 fullJoin Table2
- Parameters:
table- TableSchema 实体类伴生对象名
-
fullJoin
final Select fullJoin(SelectQuery table)
full join子句(子查询) 例如:Select() from Table1 fullJoin (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
fullJoinLateral
final Select fullJoinLateral(SelectQuery table)
full join lateral子句 例如:Select() from Table1 fullJoinLateral (Select() from Table2)
- Parameters:
table- SelectQuery 子查询dsl
-
fetchCountSql
final String fetchCountSql()
获取查询总数sql(会复制一个查询副本,并去掉limit与order by信息)
-
pageSql
final String pageSql(Integer pageSize, Integer pageNumber)
获取分页查询sql(会复制一个查询副本,并根据参数替换limit信息)
- Parameters:
pageSize- Int 一页的条数pageNumber- Int 页码
-
getSelect
SqlSelectQuery getSelect()
获取sql语法树
-
find
final <T extends Any> T find(Function1<List<Map<String, Object>>, List<T>> bind)
获取一条数据
- Parameters:
bind- Function1<List<Map<String, Any?
-
find
final <T extends Any> T find(Class<T> clazz)
获取一条数据
- Parameters:
clazz- Class<T> 实体类的java class
-
fetchCount
Long fetchCount()
获取总数(会复制一个查询副本,并去掉limit与order by信息)
-
page
final <T extends Any> Page<T> page(Integer pageSize, Integer pageNumber, Boolean needCount, Function1<List<Map<String, Object>>, List<T>> bind)
获取分页结果(会复制一个查询副本,并根据参数替换limit信息)
- Parameters:
pageSize- Int 一页的条数pageNumber- Int 页码needCount- Boolean 是否需要查询count信息bind- Function1<List<Map<String, Any?
-
page
final <T extends Any> Page<T> page(Class<T> clazz, Integer pageSize, Integer pageNumber, Boolean needCount)
获取分页结果(会复制一个查询副本,并根据参数替换limit信息)
- Parameters:
clazz- Class<T> 实体类的java classpageSize- Int 一页的条数pageNumber- Int 页码needCount- Boolean 是否需要查询count信息
-
page
final <T extends Any> Page<T> page(Integer pageSize, Integer pageNumber, Boolean needCount)
获取分页结果(会复制一个查询副本,并根据参数替换limit信息)
- Parameters:
pageSize- Int 一页的条数pageNumber- Int 页码needCount- Boolean 是否需要查询count信息
-
pageMap
final Page<Map<String, Object>> pageMap(Integer pageSize, Integer pageNumber, Boolean needCount)
获取分页结果(会复制一个查询副本,并根据参数替换limit信息)
- Parameters:
pageSize- Int 一页的条数pageNumber- Int 页码needCount- Boolean 是否需要查询count信息
-
firstPage
final <T extends Any> List<T> firstPage(OrderBy sort, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)
根据排序字段游标排序(首页)
- Parameters:
sort- OrderBy 排序规则pageSize- Int 一页的条数bind- Function1<List<Map<String, Any?
-
firstPage
final <T extends Any> List<T> firstPage(Class<T> clazz, OrderBy sort, Integer pageSize)
根据排序字段游标排序(首页)
- Parameters:
clazz- Class<T> 实体类java classsort- OrderBy 排序规则pageSize- Int 一页的条数
-
firstPage
final <T extends Any> List<T> firstPage(OrderBy sort, Integer pageSize)
根据排序字段游标排序(首页)
- Parameters:
sort- OrderBy 排序规则pageSize- Int 一页的条数
-
firstPageMap
final List<Map<String, Object>> firstPageMap(OrderBy sort, Integer pageSize)
根据排序字段游标排序(首页)
- Parameters:
sort- OrderBy 排序规则pageSize- Int 一页的条数
-
lastPage
final <T extends Any> List<T> lastPage(OrderBy sort, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)
根据排序字段游标排序(尾页)
- Parameters:
sort- OrderBy 排序规则pageSize- Int 一页的条数bind- Function1<List<Map<String, Any?
-
lastPage
final <T extends Any> List<T> lastPage(Class<T> clazz, OrderBy sort, Integer pageSize)
根据排序字段游标排序(尾页)
- Parameters:
sort- OrderBy 排序规则pageSize- Int 一页的条数
-
lastPage
final <T extends Any> List<T> lastPage(OrderBy sort, Integer pageSize)
根据排序字段游标排序(尾页)
- Parameters:
sort- OrderBy 排序规则pageSize- Int 一页的条数
-
lastPageMap
final List<Map<String, Object>> lastPageMap(OrderBy sort, Integer pageSize)
根据排序字段游标排序(尾页)
- Parameters:
sort- OrderBy 排序规则pageSize- Int 一页的条数
-
previousPage
final <T extends Any> List<T> previousPage(OrderBy sort, Object value, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)
根据排序字段游标排序(上一页)
- Parameters:
sort- OrderBy 排序规则value- Any 当前页第一条数据排序字段的值pageSize- Int 一页的条数bind- Function1<List<Map<String, Any?
-
previousPage
final <T extends Any> List<T> previousPage(Class<T> clazz, OrderBy sort, Object value, Integer pageSize)
根据排序字段游标排序(上一页)
- Parameters:
clazz- Class<T> 实体类java classsort- OrderBy 排序规则value- Any 当前页第一条数据排序字段的值pageSize- Int 一页的条数
-
previousPage
final <T extends Any> List<T> previousPage(OrderBy sort, Object value, Integer pageSize)
根据排序字段游标排序(上一页)
- Parameters:
sort- OrderBy 排序规则value- Any 当前页第一条数据排序字段的值pageSize- Int 一页的条数
-
previousPageMap
final List<Map<String, Object>> previousPageMap(OrderBy sort, Object value, Integer pageSize)
根据排序字段游标排序(上一页)
- Parameters:
sort- OrderBy 排序规则value- Any 当前页第一条数据排序字段的值pageSize- Int 一页的条数
-
nextPage
final <T extends Any> List<T> nextPage(OrderBy sort, Object value, Integer pageSize, Function1<List<Map<String, Object>>, List<T>> bind)
根据排序字段游标排序(下一页)
- Parameters:
sort- OrderBy 排序规则value- Any 当前页最后一条数据排序字段的值pageSize- Int 一页的条数bind- Function1<List<Map<String, Any?
-
nextPage
final <T extends Any> List<T> nextPage(Class<T> clazz, OrderBy sort, Object value, Integer pageSize)
根据排序字段游标排序(下一页)
- Parameters:
clazz- Class<T> 实体类java classsort- OrderBy 排序规则value- Any 当前页最后一条数据排序字段的值pageSize- Int 一页的条数
-
nextPage
final <T extends Any> List<T> nextPage(OrderBy sort, Object value, Integer pageSize)
根据排序字段游标排序(下一页)
- Parameters:
sort- OrderBy 排序规则value- Any 当前页最后一条数据排序字段的值pageSize- Int 一页的条数
-
-
-
-