1, mysql 语句
```
select * from t_app_con_site t where exists(select id from t_app_ancp where site_id = t.id)
```
上面的SQL语句中有个t,在exists子句中可以引用,那如何用 MybatisQ Plus 的 QueryWrapper 构建呢?
2、使用mybatis plus querywrapper构建
首先想个问题,我们将sql改造一下,如下所示:
```
select * from `t_app_con_site` where exists(select id from `t_app_ancp` where site_id = `t_app_con_site`.id)
```
上面的sq是能正常运行的,也就是说在不指定表别名时,表的别名是表名本身,即可以通过表名本身引用表字段,因queryWrapper可以写成以下形式
```
QueryWrapper<ConSite> queryWrapper = new QueryWrapper<>();
queryWrapper.exist("select * from t_app_aucp where site_id = t_app_con_site.id");
```
这样就可以实现了
网友评论