当前位置: 代码网 > it编程>编程语言>Java > 使用mybatisPlus的queryWrapper做左联接,内联接方式

使用mybatisPlus的queryWrapper做左联接,内联接方式

2025年03月06日 Java 我要评论
mybatisplus的querywrapper做左联接,内联接在service层生成使用mybatisplus的querywapper的java代码selectbs_user.id,bs_user.

mybatisplus的querywrapper做左联接,内联接

在service层生成使用mybatisplus的querywapper的java代码

select
bs_user.id,
bs_user.mobile,
bs_user.username,
bs_user.password,
bs_user.enable_state,
ss_user_social_security.user_id,
ss_user_social_security.enterprises_pay_social_security_this_month,
ss_user_social_security.enterprises_pay_the_provident_fund_this_month,
ss_user_social_security.participating_in_the_city_id,
ss_user_social_security.social_security_type,
ss_user_social_security.household_registration_type,
ss_user_social_security.social_security_base,
ss_user_social_security.industrial_injury_ratio
from
bs_user
left join
ss_user_social_security
on
bs_user.id = ss_user_social_security.user_id
inner join
ss_company_settings
on
bs_user.company_id = ss_company_settings.company_id
where
ss_company_settings.company_id = 1 前面是表结构和vo对象

你可以参考下面的代码来执行这个查询

  • 使用 mybatis-plus 的 querywrapper 可以简化 sql 的构建,并且可以避免写关键字拼写错误的问题
  • 假设你已经有了对应的 vo 类,其中包含上述查询结果中的所有属性和它们的 getter/setter 方法

可以参考下面的代码:

// 创建一个 querywrapper 对象
querywrapper<uservo> querywrapper = new querywrapper<>();

// 设置要查询的字段
querywrapper.select("bs_user.id", "bs_user.mobile", "bs_user.username", "bs_user.password", 
    "bs_user.enable_state", "ss_user_social_security.user_id", 
    "ss_user_social_security.enterprises_pay_social_security_this_month", 
    "ss_user_social_security.enterprises_pay_the_provident_fund_this_month", 
    "ss_user_social_security.participating_in_the_city_id", 
    "ss_user_social_security.social_security_type", "ss_user_social_security.household_registration_type", 
    "ss_user_social_security.social_security_base", "ss_user_social_security.industrial_injury_ratio");

// 添加关联表
querywrapper.leftjoin("ss_user_social_security", "bs_user.id = ss_user_social_security.user_id");
querywrapper.innerjoin("ss_company_settings", "bs_user.company_id = ss_company_settings.company_id");

// 添加查询条件
querywrapper.eq("ss_company_settings.company_id", 1);

// 调用 service 层的方法执行查询
list<uservo> userlist = userservice.list(querywrapper);
  • 这段代码中,我们使用了 querywrapper 对象来构建 sql 语句。
  • 通过调用 select 和 join 等方法,我们可以设置要查询的字段和添加关联表。
  • 最后,使用 eq 和其他方法来设置查询条件。
  • 最后,调用 list 方法执行查询,并将结果存储在一个 list 对象中返回。
  • 注意要根据具体需要来替换上述代码中的 vo 类和 service 调用方法。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com