mybatis-plus只查询部分字段的三种实现方式

 更新时间:2025年11月03日 14:34:31   作者:凯酱  
文章介绍了三种使用queryWrapper的select()方法查询数据库时指定要查询的字段的方法,方法1查询name和phone字段,其他字段值为null;方法2查询除age和address外的其他字段,这两个字段值为null;方法3使用selectMaps方法

mybatis-plus只查询部分字段

方法1

只需要查询出name和phone两个字段:使用queryWrapper的select()方法指定要查询的字段

public void selectByWrapper1() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.select("name", "phone").eq("age",25);
        List<User> users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }

这种方法会造成除“name”之外的字段的值为null

方法2

查询出除age和address外其它所有字段的数据:同样使用queryWrapper的select()方法

public void selectByWrapper2() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.select(User.class, info -> !info.getColumn().equals("age")
                && !info.getColumn().equals("address")).eq("name","jack");
        List<User> users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }

这种方法会造成除“age”"address"的字段的值为null

方法3

selectMaps

public void selectMaps2(){
        QueryWrapper<User> userQueryWrapper = Wrappers.query();

        userQueryWrapper.select("avg(age) avg_age" , "min(age) min_age" , "max(age) max_age")
                        .groupBy("age")
                        .having("sum(age) < {0}" , 60);
        List<Map<String , Object>> mapList = userMapper.selectMaps(userQueryWrapper);
        mapList.forEach(System.out::println);
    }

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot 整合Security权限控制的初步配置

    SpringBoot 整合Security权限控制的初步配置

    这篇文章主要为大家介绍了SpringBoot 整合Security权限控制的初步配置实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • 新版idea创建spring boot项目的详细教程

    新版idea创建spring boot项目的详细教程

    这篇文章给大家介绍了新版idea创建spring boot项目的详细教程,本教程对新手小白友好,若根据教程创建出现问题导致失败可下载我提供的源码,在文章最后,本教程较新,文中通过图文给大家介绍的非常详细,感兴趣的朋友可以参考下
    2024-01-01
  • java GUI编程之监听操作实例分析

    java GUI编程之监听操作实例分析

    这篇文章主要介绍了java GUI编程之监听操作,结合实例形式分析了java GUI编程监听操作的Button监听、TextField文本输入监听等相关操作技巧与注意事项,需要的朋友可以参考下
    2020-01-01
  • Java报错:ClassCastException问题解决方法

    Java报错:ClassCastException问题解决方法

    异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的,下面这篇文章主要给大家介绍了关于Java报错:ClassCastException问题解决方法,需要的朋友可以参考下
    2024-07-07
  • springboot中rabbitmq实现消息可靠性机制详解

    springboot中rabbitmq实现消息可靠性机制详解

    这篇文章主要介绍了springboot中rabbitmq实现消息可靠性机制详解,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-09-09
  • spring schedule配置多任务动态cron(增删启停)

    spring schedule配置多任务动态cron(增删启停)

    这篇文章主要介绍了spring schedule配置多任务动态cron(增删启停),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Spring-data-JPA使用时碰到的问题以及解决方案

    Spring-data-JPA使用时碰到的问题以及解决方案

    这篇文章主要介绍了Spring-data-JPA使用时碰到的问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Java设计模式中桥接模式应用详解

    Java设计模式中桥接模式应用详解

    桥接,顾名思义,就是用来连接两个部分,使得两个部分可以互相通讯。桥接模式将系统的抽象部分与实现部分分离解耦,使他们可以独立的变化。本文通过示例详细介绍了桥接模式的原理与使用,需要的可以参考一下
    2022-11-11
  • IntelliJ IDEA 无法识别 Maven SNAPSHOT 依赖但 Maven 编译正常的根本原因

    IntelliJ IDEA 无法识别 Maven SNAPSHOT 依赖但 Maven 编译正常的根本原因

    本文描述了在IntelliJ IDEA中使用Maven SNAPSHOT依赖时遇到的编译正常但IDEA中无法识别的问题,根本原因在于Maven缓存机制及IDEA的项目模型缓存未更新,解决方案包括手动修改libraries.xml文件或触发MavenReload
    2026-05-05
  • 深入了解SpringBoot中@ControllerAdvice的介绍及三种用法

    深入了解SpringBoot中@ControllerAdvice的介绍及三种用法

    这篇文章主要为大家详细介绍了SpringBoot中@ControllerAdvice的介绍及三种用法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-02-02

最新评论