【Mybatis-plus-join】 changeQueryWrapper 转换条件构造器

Metadata

title: 【Mybatis-plus-join】 changeQueryWrapper 转换条件构造器
date: 2023-01-22 19:02
tags:
  - 行动阶段/完成
  - 主题场景/组件
  - 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
  - 细化主题/Module/Mybatis-plus-join
categories:
  - Mybatis-plus-join
keywords:
  - Mybatis-plus-join
description: 【Mybatis-plus-join】 changeQueryWrapper 转换条件构造器 转换查询Wrapper 会把 查询条件,group,order by,having转换

【Mybatis-plus-join】 changeQueryWrapper 转换条件构造器

转换查询Wrapper 会把 查询条件,group,order by,having转换

注意该方法无法给 多个入参添加别名,例如 orderByDesc(“id”,”id2”) 这种情况下别名就会添加错误

 QueryWrapper<Users> wrapper1 = new QueryWrapper<>();
        wrapper1.eq("user_id", 1)
                .and(w -> {
                    w.like("user_id", 2).or()
                            .le("user_id", 34);
                })
                .orderByDesc("user_id")
                .groupBy("user_id")
                .having("1={0}", 1);
 wrapper.changeQueryWrapper(wrapper1);
SELECT users.create_time, users.content_json, users.user_id, u_age.age_doc, u_age.age_name, u_age.id, u_age.content_json_age, u_age.id AS ageTableId, '1' AS mpnb, sum(u_age.id) AS ageIds
 FROM users AS users
 LEFT JOIN users_age AS u_age
 ON u_age.id = users.age_id
WHERE (users.user_id = 1 AND (user_id LIKE '%2%' OR user_id <= 34)) GROUP BY users.user_id HAVING 1 = 1 ORDER BY users.user_id DESC;