Interface Query<Children>

All Superinterfaces:
Serializable
All Known Implementing Classes:
KtLambdaWrapper

public interface Query<Children> extends Serializable
参考 Query
Author:
yulichang
  • Method Details

    • getSelectColum

      List<Select> getSelectColum()
    • getChildren

      Children getChildren()
    • getIndex

      Integer getIndex()
    • isHasAlias

      boolean isHasAlias()
    • getAlias

      String getAlias()
    • select

      @Deprecated default Children select(Class<?> entityClass, Predicate<com.baomidou.mybatisplus.core.metadata.TableFieldInfo> predicate)
      Deprecated.
      过滤查询的字段信息(主键除外!) 推荐使用 selectFilter(Class, Predicate) 含主键
      Parameters:
      predicate - 过滤方式
      Returns:
      children
      See Also:
    • selectFilter

      default Children selectFilter(Class<?> entityClass, Predicate<SelectCache> predicate)
      过滤查询的字段信息

      例1: 只要 java 字段名以 "test" 开头的 -> select(i -> i.getProperty().startsWith("test"))

      例2: 只要 java 字段属性是 CharSequence 类型的 -> select(TableFieldInfo::isCharSequence)

      例3: 只要 java 字段没有填充策略的 -> select(i -> i.getFieldFill() == FieldFill.DEFAULT)

      例4: 要全部字段 -> select(i -> true)

      例5: 只要主键字段 -> select(i -> false)

      Parameters:
      predicate - 过滤方式
      Returns:
      children
    • select

      Children select(kotlin.reflect.KProperty<?>... columns)
    • select

      default Children select(String... columns)
      String 查询
      Parameters:
      columns - 列
    • selectAs

      default Children selectAs(String column, kotlin.reflect.KProperty<?> alias)
      String 查询
      Parameters:
      column - 列
    • selectAs

      default Children selectAs(String index, kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
      String 查询
      Parameters:
      column - 列
    • selectAsClass

      default Children selectAsClass(Class<?> source, Class<?> tag)
      说明: 比如我们需要查询用户表有10个字段,然而我们只需要3个就够了,用mybatis-plus提供的select

      需要一个属性一个属性填入很不优雅,现在我们可以用selectAsClass(UserDO.class, UserVo.class)

      即可按所需的UserVo返回,前提是UserVo.class中的属性必须是UserDO.class中存在的

      Parameters:
      source - 数据源实体类
      tag - 目标类
      Returns:
      children
    • selectAs

      default Children selectAs(kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
      ignore
    • selectAs

      default Children selectAs(kotlin.reflect.KProperty<?> column, String alias)
      别名查询
    • selectAll

      default Children selectAll(Class<?> clazz)
      查询实体类全部字段
    • selectAll

      default Children selectAll(Class<?> clazz, String prefix)
      查询实体类全部字段
    • getSqlSelect

      String getSqlSelect()
      select sql 片段
    • selectFunc

      default Children selectFunc(BaseFuncEnum funcEnum, Object column, String alias)
      聚合函数查询

      wrapper.selectFunc(() -> "COUNT(%s)", "t.id", "total");

      lambda wrapper.selectFunc(() -> "COUNT(%s)", UserDO::getId, UserDTO::getTotal);

      Parameters:
      funcEnum - 函数枚举 DefaultFuncEnum
      column - 函数作用的字段
      alias - 别名
    • selectFunc

      default Children selectFunc(BaseFuncEnum funcEnum, kotlin.reflect.KProperty<?> column, String alias)
    • selectFunc

      default Children selectFunc(BaseFuncEnum funcEnum, kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
    • selectFunc

      default Children selectFunc(BaseFuncEnum funcEnum, kotlin.reflect.KProperty<?> column)
    • selectFunc

      default Children selectFunc(BaseFuncEnum funcEnum, Object column, kotlin.reflect.KProperty<?> alias)
    • selectFunc

      Children selectFunc(String sql, MFunction<FuncArgs> column, String alias)
    • selectFunc

      default Children selectFunc(String sql, MFunction<FuncArgs> column, kotlin.reflect.KProperty<?> alias)
    • selectSum

      default Children selectSum(kotlin.reflect.KProperty<?> column)
      SUM()
    • selectSum

      default Children selectSum(kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
    • selectSum

      default Children selectSum(kotlin.reflect.KProperty<?> column, String alias)
    • selectCount

      default Children selectCount(kotlin.reflect.KProperty<?> column)
      COUNT()
    • selectCount

      default Children selectCount(Object column, kotlin.reflect.KProperty<?> alias)
    • selectCount

      default Children selectCount(Object column, String alias)
    • selectCount

      default Children selectCount(kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
    • selectCount

      default Children selectCount(kotlin.reflect.KProperty<?> column, String alias)
    • selectMax

      default Children selectMax(kotlin.reflect.KProperty<?> column)
      MAX()
    • selectMax

      default Children selectMax(kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
    • selectMax

      default Children selectMax(kotlin.reflect.KProperty<?> column, String alias)
    • selectMin

      default Children selectMin(kotlin.reflect.KProperty<?> column)
      MIN()
    • selectMin

      default Children selectMin(kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
    • selectMin

      default Children selectMin(kotlin.reflect.KProperty<?> column, String alias)
    • selectAvg

      default Children selectAvg(kotlin.reflect.KProperty<?> column)
      MIN()
    • selectAvg

      default Children selectAvg(kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
    • selectAvg

      default Children selectAvg(kotlin.reflect.KProperty<?> column, String alias)
    • selectLen

      default Children selectLen(kotlin.reflect.KProperty<?> column)
      LEN()
    • selectLen

      default Children selectLen(kotlin.reflect.KProperty<?> column, kotlin.reflect.KProperty<?> alias)
    • selectLen

      default Children selectLen(kotlin.reflect.KProperty<?> column, String alias)