AbsractWrapper
包含基础的条件构造方法。在QueryWrapper和UpdateWrapper中column为String类型,在LambdaQueryWrapper和LambdaUpdateWrapper中column为SFunction<T, ?>类型,表示实体类的getter方法。全部方法都包含第一个参数为conditon的重载版本,用于判断该条件是否生效。
| 方法 | 说明 | SQL |
|---|---|---|
eq(conditon = true, column, val) | 等于 | = |
ne(conditon = true, column, val) | 不等于 | <> 或 != |
gt(conditon = true, column, val) | 大于 | > |
ge(conditon = true, column, val) | 大于等于 | >= |
lt(conditon = true, column, val) | 小于 | < |
le(conditon = true, column, val) | 小于等于 | <= |
between(conditon = true, column, val1, val2) | 两者之间 | BETWEEN val1 AND val2 |
notBetween(conditon = true, column, val1, val2) | 两者之外 | NOT BETWEEN val1 AND val2 |
like(conditon = true, column, val) | 包含(全模糊) | LIKE '%val%' |
notLike(conditon = true, column, val) | 不包含 | NOT LIKE '%val%' |
likeLeft(conditon = true, column, val) | 左模糊 | LIKE '%val' |
notLikeLeft(conditon = true, column, val) | 不包含左模糊 | NOT LIKE '%val' |
likeRight(conditon = true, column, val) | 右模糊 | LIKE 'val%' |
notLikeRight(conditon = true, column, val) | 不包含右模糊 | NOT LIKE 'val%' |
QueryWrapper
用于构造查询条件,除了支持AbsractWrapper中的所有查询条件外,还支持选择查询特定字段。
| 方法 | 说明 | SQL | |
|---|---|---|---|
select(columns) | 选择特定的查询字段 | SELECT ... | columns类型为String...和List<String> |
UpdateWrapper
用于构造更新条件,除了支持AbsractWrapper中的所有查询条件外,还支持SET操作或手写SET语句。
| 方法 | 说明 | SQL |
|---|---|---|
set(condition = true, column, val) | 设置字段的值 | SET column = val |
setSql(condition = true, sql) | 使用手写SET语句 | SET ... |
LambdaQueryWrapper
用于构造查询条件,与QueryWrapper区别为字段名全部使用类型为SFunction<T, ?>的lambda。
| 方法 | 说明 | SQL | |
|---|---|---|---|
select(columns) | 选择特定的查询字段 | SELECT ... | columns类型为SFunction<T, ?>... |
LambdaUpdateWrapper
用于构造更新条件,与QueryWrapper区别为字段名全部使用类型为SFunction<T, ?>的lambda。
| 方法 | 说明 | SQL |
|---|---|---|
set(condition = true, column, val) | 设置字段的值 | SET column = val |
setSql(condition = true, sql) | 使用手写SET语句 | SET ... |