服务器之家

服务器之家 > 正文

Mybatis-Plus select不列出全部字段的方法

时间:2021-08-21 15:57     来源/作者:_灯火阑珊处

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@lt;User@gt; queryWrapper = new QueryWrapper@lt;@gt;();
  queryWrapper.select("name", "age").like("name", "雨");
  List@lt;User@gt; users = userMapper.selectList(queryWrapper);
  users.forEach(System.out::println);
 }

日志输出sql:

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

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

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

日志输出sql:

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

到此这篇关于Mybatis-Plus select不列出全部字段的方法的文章就介绍到这了,更多相关Mybatis-Plus select不列出全部字段内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.jianshu.com/p/e97b8236db67

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部