# 2.0 chain 使用方式

//      原模型 增加 @JoinChainModel 注解 
//      生成规则是 原模型名称后+ Chain 比如说 原模型名字叫 Users 生成的类就叫做 UsersChain
        UsersChain usersChain = UsersChain.create();
        UsersAgeChain ageChain = UsersAgeChain.create();
        
//        注意字段定义 _Field 开头的代表是单个字段,一般用在单个类型定义的时候
//        例如:.eq(usersChain._ageId(),1)
        Joins.chain(usersChain)
//                查询user表全部字段
                .selectAll(usersChain)
                .leftJoin(ageChain._id(), usersChain._ageId())
//                joinand 第一个参数为需要进行 joinAnd的 子表Chain 模型
                .joinAnd(ageChain, (w) -> w.eq(ageChain._id(1)))
               .joinList(UsersVo.class);

// 生成SQL
        SELECT
        users.user_name,
        users.create_time,
        users.age_id,
        users.content_json,
        users.user_id
                FROM
        users AS users
        LEFT JOIN users_age AS users_age ON users_age.id = users.age_id
        AND ( users_age.id = 1 )

# lambda使用方式

# selectAll() 查询全部

selectAll()方法,查询出当前表所有的字段

JoinLambdaWrapper<Users> wrapper = new JoinLambdaWrapper<>(Users.class);
wrapper.leftJoin(UsersAge.class,UsersAge::getId,Users::getAgeId)
  	.eq(UserAge::getAgeName,"95")
  	.selectAll().end();
// 执行查询
usersService.joinList(wrapper,UsersVo.class);
 
// 执行SQL 
select 
  users.user_id,
	users.user_name,
	users_age.age_name,
	users_age.age_doc,
	users_age.id
from users users
  left join users_age users_age on users_age.id = users.age_id
where (
	users_age.age_name = '95'
)