当前使用版本(必填,否则不予处理)
3.4.1
该问题是如何引起的?(确定最新版也有问题再提!!!)
使用 Wrapper 自定义SQL时,new QueryWrapper 或者 LambdaQueryWrapper 时传入的参数不能自动变成相应的 where 条件 必须使用wrapper 添加。
重现步骤(如果有就写完整)
1 自定义sql
方法: int selectMyCount(@Param(Constants.WRAPPER) Wrapper
2 调用
UserInfo userInfo = new UserInfo();
userInfo.setEmail("test@xxx.xxx");
LambdaQueryWrapper<UserInfo> wrapper = new LambdaQueryWrapper<>(userInfo);
wrapper.ge(UserInfo::getAge, 20);
int a = userInfoMapper.selectCount(wrapper);
// 生成sql:SELECT COUNT( * ) FROM user_info WHERE email=? AND (age >= ? )
int b = userInfoMapper.selectMyCount(wrapper);
// 生成sql: SELECT COUNT( * ) FROM user_info WHERE (age >= ? )
报错信息
无
Comment From: miemieYaho
customSqlSegment 不支持wrapper内的entity
Comment From: 157677678
customSqlSegment 不支持wrapper内的entity
那能在文档里写一下么……
Comment From: miemieYaho
补了