美文网首页
除了排除的字段外,其余查询所有字段

除了排除的字段外,其余查询所有字段

作者: 盗生一 | 来源:发表于2020-10-21 22:28 被阅读0次

Mybatis-Plus select不列出全部字段

mybatis-plus select查询语句默认是查全部字段,有两种方法可以指定要查询的字段

CREATE TABLE `user` (
  `id` bigint(20) NOT NULL COMMENT '主键',
  `name` varchar(30) DEFAULT NULL COMMENT '姓名',
  `age` int(11) DEFAULT NULL COMMENT '年龄',
  `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
  `manager_id` bigint(20) DEFAULT NULL COMMENT '直属上级id',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  PRIMARY KEY (`id`),
  KEY `manager_fk` (`manager_id`),
  CONSTRAINT `manager_fk` FOREIGN KEY (`manager_id`) REFERENCES `user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

1、user表只需要查询出name和age两个字段的数据,可以使用queryWrapper的select()方法指定要查询的字段

    @Test
    public void selectByWrapper10() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.select("name", "age").like("name", "雨");
        List<User> users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }

日志输出sql:

DEBUG==> Preparing: SELECT name,age FROM user WHERE name LIKE ?
DEBUG==> Parameters: %雨%(String)
TRACE<== Columns: name, age
TRACE<== Row: 张雨琪, 31
TRACE<== Row: 刘红雨, 31
DEBUG<== Total: 2

2、user表要查询出除manager_id和create_time外其它所有字段的数据,同样也是使用queryWrapper的select()方法

    @Test
    public void selectByWrapper11() {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.select(User.class, info -> !info.getColumn().equals("manager_id")
                && !info.getColumn().equals("create_time"));
        List<User> users = userMapper.selectList(queryWrapper);
        users.forEach(System.out::println);
    }

日志输出sql:

DEBUG==> Preparing: SELECT id,name,age,email FROM user
DEBUG==> Parameters:
TRACE<== Columns: id, name, age, email
TRACE<== Row: 1087982257332887553, 大boss, 40, boss@baomidou.com
TRACE<== Row: 1088248166370832385, 王天风, 25, wtf@baomidou.com
TRACE<== Row: 1088250446457389058, 李艺伟, 28, lyw@baomidou.com
TRACE<== Row: 1094590409767661570, 张雨琪, 31, zjq@baomidou.com
TRACE<== Row: 1094592041087729666, 刘红雨, 31, lhm@baomidou.com
DEBUG<== Total: 5

相关文章

  • 除了排除的字段外,其余查询所有字段

    Mybatis-Plus select不列出全部字段 参考资料 https://www.jianshu.com/p...

  • orm查询操作

    单表查询操作 外键的跨表查询 正向查询(在有外键字段的表向没有的表查询) 反向查询(没有外键的字段向有外键字段的表...

  • 四、Oracle之查询语句

    1、基本查询语句 2、在SQL*PLUS中设置格式 3、查询表中所有字段及指定字段 查询所有字段 查询指定字段 4...

  • 数据库学习笔记-基础查询

    基础查询 查询字段语法 查询单字段SELECT 字段 FROM 表名;查询多字段SELECT 字段1,字段2,字段...

  • 查询数据

    一、单表查询 1.查询所有的字段 a.SELECT 字段1,字段2,字段3... FROM 表名 b.SELECT...

  • 常用sql语句

    数据的准备 查询所有字段 查询指定字段 使用 as 给字段起别名 通过 as 给表起别名 消除重复行 条件查询 逻...

  • mysql数据查询之单表查询

    查询所有字段 SELECT * FROM tb_name; 查询指定字段 SELECT id,name FROM ...

  • DQL:数据查询语言(单表)

    1.查询一张表的所有字段: 2.查询指定字段: 3.like(模糊查询) 4.where(条件查询) 5.字段控制...

  • SQL基本操作(2)--单表查询

    1、查询所有字段 SELECT * FROM t_student; 2、查询指定字段 SELECT stuName...

  • mysql分库分表简单总结

    垂直拆分 把热点字段和非热点字段拆分到不同的表中 水平拆分 如果查询方式除了id外 有一个 假设这个字段是name...

网友评论

      本文标题:除了排除的字段外,其余查询所有字段

      本文链接:https://www.haomeiwen.com/subject/rpdymktx.html