java lambdaquerywrapper in子查询如何拼接sql
时间: 2023-09-28 10:07:23 浏览: 157
SQL查询结果进行拼接
可以使用LambdaQueryWrapper的nested方法来实现in子查询的拼接。以下是一个示例代码:
```java
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
wrapper.inSql(User::getId, "select user_id from user_role where role_id = 1");
List<User> userList = userMapper.selectList(wrapper);
```
上述代码中,LambdaQueryWrapper的inSql方法将会生成以下SQL语句:
```sql
select * from user where id in (select user_id from user_role where role_id = 1)
```
注意,这里需要使用inSql方法而不是in方法,因为in方法只支持传入一个集合或者数组,而无法传入SQL语句。
阅读全文