Mybatis-Plus中的查詢指定字段
更新時間:2024年09月20日 09:18:11 作者:清夢壓星河_Ciao
在使用Mybatis-Plus進行數據查詢時,可以通過指定字段來優(yōu)化查詢效率,方法一和方法二分別執(zhí)行不同的SQL語句,其中方法二在執(zhí)行時通常會更高效,因為它可能通過減少數據處理量和優(yōu)化查詢結構來提升性能,比較兩種方法的SQL執(zhí)行情況
Mybatis-Plus查詢指定字段
select word from addition;
public void test3(){
LambdaQueryWrapper<Addition> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.select(Addition::getWord);
//方法一:通過stream流操作
List<String> list = additonService.list(queryWrapper).stream().map(Addition::getWord).collect(Collectors.toList());
//方式二:listObjs
List<Object> list1 = additionService.listObjs(queryWrapper);
}- 方法一查詢時執(zhí)行的SQL語句為:
select * from addition;
- 方法二執(zhí)行的SQL語句為:效率更高。
select word from addition;
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);
}總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
idea創(chuàng)建springboot項目,java版本只能選擇17和21的解決方案
這篇文章主要介紹了idea創(chuàng)建springboot項目,java版本只能選擇17和21的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04
Java如何獲取List<String>中的String詳解
工作了這么長時間了,一直沒有記錄的習慣,以至于導致我即便是查過的東西總會忘記,下面這篇文章主要給大家介紹了關于Java如何獲取List<String>中String的相關資料,需要的朋友可以參考下2022-02-02
Spring?Boot如何在加載bean時優(yōu)先選擇我
這篇文章主要介紹了Spring?Boot如何在加載bean時優(yōu)先選擇我,在?Spring?Boot?應用程序中,我們可以采取三種方式實現自己的?bean?優(yōu)先加載,本文通過實例代碼給大家詳細講解,需要的朋友可以參考下2023-03-03

