LambdaQueryWrapper 多表联查
时间: 2023-10-17 15:37:37 浏览: 188
多表联合查询
LambdaQueryWrapper可以用于多表联查,它提供了一系列方法来构建多表查询条件。例如,我们可以使用`leftJoin`、`innerJoin`等方法来指定表的关联关系,并使用`on`方法来设置联查条件。另外,我们还可以使用`select`方法来指定需要查询的字段。
下面是一个示例代码,演示了如何使用LambdaQueryWrapper实现多表联查:
```
public List<User> userList() {
LambdaQueryWrapper<User> wrapper = Wrappers.lambdaQuery();
wrapper
.select(User.class, info -> !info.getColumn().startsWith("user_"))
.leftJoin(UserInfo.class, UserInfo::getUserId, User::getId)
.eq(UserInfo::getGender, "male")
.ge(User::getAge, 20);
return this.baseMapper.selectList(wrapper);
}
```
在上面的示例中,我们使用`select`方法指定了查询的字段,这里使用了一个lambda表达式来排除掉`UserInfo`表中以"user_"开头的字段。然后使用`leftJoin`方法指定了`UserInfo`表和`User`表之间的关联关系,使用`eq`方法和`ge`方法分别设置了条件。最后使用`selectList`方法执行查询。
需要注意的是,具体的多表联查操作取决于你所使用的数据库和ORM框架,以上示例只是一个简单的示范。你可以根据自己的实际需求和数据库结构来进行多表联查的操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Mybatis-Plus高级查询LambdaQueryWrapper&QueryWrapper](https://blog.csdn.net/weixin_52317961/article/details/128317591)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文