課程
/后端開發(fā)
/Java
/MyBatis-Plus入門
老師好,請問我要多表聯(lián)查應(yīng)該怎么操作?我看教程都是單表操作呢
2020-03-18
源自:MyBatis-Plus入門 6-3
正在回答
?? ? ? MP自帶的CRUD操作是針對單表操作的,如果要操作多表,可以寫自定義sql。
給你舉個使用條件構(gòu)造器的多表sql例子,可以寫在xml中或注解中,下面的是用xml的寫法:
<select?id="mySelectList"?resultType="User">????? ????select?u.*,r.role_name?from?user?u?inner?join?role?r?on?u.role_id?=?r.role_id?${ew.customSqlSegment} </select>
對應(yīng)的Mapper接口中的方法定義:
List<User>?mySelectList(@Param(Constants.WRAPPER)?Wrapper<User>?wrapper);
? ? ? ?返回值可以是VO。也可以是實體類,但要要記住,如果用實體類接返回值,實體中非該實體對應(yīng)表的數(shù)據(jù)庫字段的屬性上要標注@TableField(exist = false),如果使用了條件構(gòu)造器,條件構(gòu)造器的字段名別忘了帶別名。
補充
QueryWrapper<Userinfo> qw = Wrappers.<Userinfo>query();
qw.like("a.name","張王李趙").eq("b.labelname", "xxx");
可以看看mybatis的文檔 用XML文件的一樣的方法?
舉報
MyBatis-Plus框架入門必學(xué)課程!
4 回答條件構(gòu)造器在多表聯(lián)查中的使用
1 回答聯(lián)表怎么查詢呢?
1 回答關(guān)于多表查詢
1 回答多表查詢 分頁
1 回答多表聯(lián)查時數(shù)據(jù)庫有重復(fù)字段名時打印為null
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2020-03-20
?? ? ? MP自帶的CRUD操作是針對單表操作的,如果要操作多表,可以寫自定義sql。
給你舉個使用條件構(gòu)造器的多表sql例子,可以寫在xml中或注解中,下面的是用xml的寫法:
對應(yīng)的Mapper接口中的方法定義:
? ? ? ?返回值可以是VO。也可以是實體類,但要要記住,如果用實體類接返回值,實體中非該實體對應(yīng)表的數(shù)據(jù)庫字段的屬性上要標注@TableField(exist = false),如果使用了條件構(gòu)造器,條件構(gòu)造器的字段名別忘了帶別名。
2020-04-23
補充
QueryWrapper<Userinfo> qw = Wrappers.<Userinfo>query();
qw.like("a.name","張王李趙").eq("b.labelname", "xxx");
2020-03-18
可以看看mybatis的文檔 用XML文件的一樣的方法?