# 自定义别名和返回map类型
在构造器的第二个String类型的参数,就是自定义的别名 leftJoin innerJoin rightJoin 三个参数代表使用默认别名,四个参数代表使用自定义别名 如果想要返回map类型,直接class用 Map.class 或者类似于hutool Dict这种继承hashMap的
// 两个参数代表自定义别名
JoinLambdaWrapper<Users> wrapper = joinLambdaQueryWrapper(Users.class, "userMaster");
wrapper
.select(Users::getUserId, Users::getUserName)
.leftJoin(UsersAge.class, UsersAge::getId, Users::getAgeId, "u_age")
.select(UsersAge::getAgeDoc).end()
.leftJoin(UsersAge.class, UsersAge::getId, Users::getAgeId, "u_a")
.select(UsersAge::getAgeName).end();
List<Map> dataList = super.joinList(wrapper, Map.class);
// SQL
SELECT
userMaster.user_id,
userMaster.user_name,
u_age.age_doc,
u_a.age_name
FROM
users AS userMaster
LEFT JOIN users_age AS u_age ON u_age.id = userMaster.age_id
LEFT JOIN users_age AS u_a ON u_a.id = userMaster.age_id;
← 多对多查询映射 distinct 去重 →