-
2021-12-22 17:07:22
项目整合了mybatisPlus时,可以使用count函数做一些简单的统计
前言今天项目中遇到一个记录统计,由于项目整合过mybatisPlus,就不通过mybatis去写sql做查询,可通过QueryWrapper方法直接进行查询
一、调用方法
用mybatisPlus使用count聚合函数时,直接调用.select方法即可,例如:
csArchiveQueryWrapper.select("COUNT(*) as importNo");
二、详细server层代码这里我们通过 QueryWrapper.select() 进行查询,在传入getMap方法,定义map接收,最后取出我们需要的 importNo 即可,由于在实体类中定义的类型为 Integer,所以做了类型转换
代码如下(示例):
public ArchiveRecords query(ArchiveRecordsVo vo) { ………………………… ArchiveRecords records = baseMapper.selectOne(queryWrapper); //查询archive表中档案总条数 QueryWrapper<Archive> ArchiveQueryWrapper= new QueryWrapper<>(); ArchiveQueryWrapper.select("COUNT(*) as importNo"); Map<String , Object> map = archiveService.getMap(ArchiveQueryWrapper); System.out.println("==============>map:" + map); Integer No = Integer.valueOf(String.valueOf(map.get("importNo"))); System.out.println("--------------->取出map中importNo:" + No); System.out.println("--------------->取出map中importNo:" + No); System.out.println("--------------->取出map中importNo:" + No); records1.setImportNo(No); System.out.println("--------------->set后新总条数:" + records.getImportNo()); System.out.println("--------------->set后新总条数:" + records.getImportNo()); System.out.println("--------------->set后新总条数:" + records.getImportNo()); return records; }
控制台输出:
代码如下(示例):
==============>map:{importNo=5} --------------->取出map中importNo:5 --------------->取出map中importNo:5 --------------->取出map中importNo:5 --------------->set后新总条数:5 --------------->set后新总条数:5 --------------->set后新总条数:5
注意:
在select()中自定义的sql语句,不需要加 from table_name,它会自动拼接,若自己加了,则会出现报错,拼接的sql语句将会变为:
SELECT COUNT(*) as importNo FROM archive FROM archive
sql会多拼接一个 from table_name 这里需要注意一下,需要where条件可通过 QueryWrapper.eq() 等方法实现,可根据实际需求自行选择
总结通过mybatisPlus的方法,可以快速的实现某些方法,不用写xml,做层层调用,非常好用。
更多相关内容 -
java count函数用法
2021-05-24 05:19:40java count函数用法[2021-02-11 06:55:28]简介:在excel中count函数的功能是:计算数字的个数,对给定数据集合或者单元格区域中数据的个数进行计数。COUNT函数用来计算所列参数中数值的个数,即为实现计数功能的函数...java count函数用法
[2021-02-11 06:55:28] 简介:
在excel中count函数的功能是:计算数字的个数,对给定数据集合或者单元格区域中数据的个数进行计数。COUNT函数用来计算所列参数中数值的个数,即为实现计数功能的函数。COUNT函数
python中函数COUNT()的功能是统计字符串里某个字符出现的次数,语法为【str.count("char", start,end)】,其中str为要统计的字符,star为索引字符串的起始位置,end为索引字符串的
数据库的substr函数用法:1、【SUBSTR(str,pos,len)】从pos开始的位置,截取len个字符;2、【SUBSTR(str,pos)】 pos开始的位置,一直截取到最后。数据库的substr函数用法:1、SUBSTR(
c语言strlen函数用法是C语言库的函数,包含于【string.h】中,作用为计算一个字符串中元素的个数,即从数组头部计数,直到遇到字符串结束符【\0】为止,计数结果不包括【\0】。c语言s
Java中构造函数不能被继承。子类在继承父类的时候,首先运行父类构造函数,也就是说,运行子类时会先调用父类的构造函数。构造函数一般用来初始化成员属性和成员方法。Java中构造
本文实例讲述了PHP字符串与数组处理函数用法。分享给大家供大家参考,具体如下:字符串处理函数trim --去除字符串首尾的多余空白字符和其他字符函数结构:string trim ( string $
C语言strcmp函数用法strcmp函数语法为“int strcmp(char *str1,char *str2)”,其作用是比较字符串str1和str2是否相同,如果相同则返回0,如果不同,前者大于后者则返回1,否则返回-1
hyperlink函数的用法:当单击HYPERLINK函数所在的单元格时,将打开链接的文件或跳转到指定工作表的单元格区域,语法为【HYPERLINK(link_location,friendly_name)】。hyperlink函
odps函数
2020-10-23
云计算
常用函数系统自带函数coalesce():返回列表中第一个非NULL的值,如果列表中所有的值都是NULL则返回NULL;eg:concat():字符串连接函数;e
系统运维
博文结构自定义函数变量作用域Python内建函数
一.函数
Python中的函数都是语句和表达式的集合。函数的用法并没有限制,使用方
php中substr()函数的用法:substr()函数用于返回字符串的一部分。函数语法:【substr(string, start, length)】,其中参数length是可选的,用于规定要返回的字符串长度。substr()函
strtok函数用于分解字符串为一组字符串,strtok函数的声明是“char *strtok(char *str, const char *delim)”,其中参数str表示要被分解成一组小字符串的字符串。C 库函数 - st
SQL Server中的聚合函数有:1、AVG;2、COUNT;3、MAX;4、SUM;5、COUNT_BIG;6、MIN;7、GROUPING;8、VAR;9、STDEV;10、VARP。sql server中的聚合函数有:(学习视频分享:mysql视频教程)1、AVG
php中字符替换函数是str_replace()。str_replace()函数用于替换字符串中的一些字符,该函数是区分大小写的。函数语法:【str_replace(find,replace,string,count)】。php中字符
php去除nbsp的方法:首先创建一个PHP代码示例文件;然后通过“preg_replace("/(\s|\ \;| |\xc2\xa0)/", " ", strip_tags($val));”方法去除所有nbsp即可。推荐:《PHP视频教
-
count函数详细介绍
2021-05-20 19:05:51select count(字段) from 表名; #得到字段中is not null的行数select count(*)from 表名; #任何列,只要有一个非null就会被统计上。全为null(不会出现该情况)则不被统计。用于统计表的行数select count(1) from ...select count(字段) from 表名; #得到字段中is not null的行数
select count(*)from 表名; #任何列,只要有一个非null就会被统计上。全为null(不会出现该情况)则不被统计。用于统计表的行数
select count(1) from 表名; #统计表的行数。添加一个字段中所有值全为1且行数为表的总行数的字段,再统计个数
效率:
MYISAM存储引擎下,count(*)的效率最高。因为它里面有一个内部的计数器,它直接就返回了个数
INNODB存储引擎下:count(*)和count(1)差不多,但是比count(字段)高一些,因为count(字段)需要判断字段中的值是否为null
Signal ()函数详细介绍 Linux函数
http://blog.csdn.net/ta893115871/article/details/7475095 Signal ()函数详细介绍 Linux函数 signal()函数理解 在
Signal ()函数详细介绍 Linux函数(转)
Signal ()函数详细介绍 Linux函数 收藏人:紫火神兵 2012-09-27 | 阅:5659 转:22 | 来源 | 分享 signa ...
loadrunner&#160;脚本开发-web_custom_request函数详细介绍
脚本开发-web_custom_request函数详细介绍 by:授客 QQ:1033553122 c语言版本: int web_custom_request(const char *RequestN ...
python内置函数详细介绍
知识内容: 1.python内置函数简介 2.python内置函数详细介绍 一.python内置函数简介 python中有很多内置函数,实现了一些基本功能,内置函数的官方介绍文档: https: ...
linux awk 内置函数详细介绍(实例)
这节详细介绍awk内置函数,主要分以下3种类似:算数函数.字符串函数.其它一般函数.时间函数 一.算术函数: 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y ...
一.Select 函数详细介绍【转】
转自:http://www.cnblogs.com/hjslovewcl/archive/2011/03/16/2314330.html Select在Socket编程中还是比较重要的,可是对于初学S ...
linux awk 内置函数详细介绍(实例)
这节详细介绍awk内置函数,主要分以下3种类似:算数函数.字符串函数.其它一般函数.时间函数 一.算术函数: 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y ...
php中session_id()函数详细介绍,会话id生成过程及session id长度
php中session_id()函数原型及说明session_id()函数说明:stringsession_id([string$id])session_id() 可以用来获取/设置 当前会话 ID. ...
MySQL中字符串函数详细介绍
MySQL字符串函数对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str)返回字符串str的 最左面字符的ASCII代码值.如果str是空字符串, 返回0.如果str是NULL,返回N ...
随机推荐
ASM:《X86汇编语言-从实模式到保护模式》第14章:保护模式下的特权保护和任务概述
★PART1:32位保护模式下任务的隔离和特权级保护 这一章是全书的重点之一,这一张必须要理解特权级(包括CPL,RPL和DPL的含义)是什么,调用门的使用,还有LDT和TSS的工作原理(15章着重 ...
【java读书笔记】——java开篇宏观把控 + HelloWorld
学完java有一段时间了,一直没有做对应的总结,总认为有一种缺憾.从这篇博客開始,将自己平时的学习笔记进行总结归纳,分享给大家. 这篇博客主要简单的介绍一下java的基础知识,基本的目的是扫盲.原来仅 ...
红黑树和AVL树的实现与比较-----算法导论
一.问题描述 实现3种树中的两种:红黑树,AVL树,Treap树 二.算法原理 (1)红黑树 红黑树是一种二叉查找树,但在每个结点上增加一个存储位表示结点的颜色,可以是red或black.红黑树满足以 ...
浅谈我对几个Web前端开发框架的比较
强调一下,这篇日志主要还是针对想学前端开发的新朋友写的,不是说我有什么独特见解,而是比较客观的状态,就各种框架的异同和应用场合,需要注意的地方做简单描述,不做具体深入分析,有的地方比较抽象,对于抽象之 ...
ecshop中ajax的调用原理 1
ecshop中ajax的调用原理 1:首先ecshop是如何定义ajax对象的. ecshop中的ajax对象是在js/transport.js文件中定义的.里面是ajax对象文件.声明了一个va ...
CISCO2960配置vlan
一.VTP配置 1.VLAN database 2.(VLAN)#vtp domain wx 3.(VLAN)#vtp server 二.VLAN配置 1.VLAN database 2.(VLAN) ...
[开源]基于Log4Net简单实现KafkaAppender
背景 基于之前基于Log4Net本地日志服务简单实现 实现本地日志服务,但是随着项目开发演进,本地日志服务满足不了需求,譬如在预发布环境或者生产环境,不可能让开发人员登录查看本地日志文件分析. Kaf ...
Codeforces340 E. Iahub and Permutations
Codeforces题号:#340E 出处: Codeforces 主要算法:思维+DP 难度:4.8 题意: 有一个长度为$n$的排列(即各元素互不相同),其中有一些为-1.现要求将数填到这些-1上 ...
python 类的介绍
使用面向对象的优点: 1.能够更好的设计软件架构 2.维护软件模块 3.易于架构和组件的重用 类的定义: 构造函数:初始化用,写不写都可以,默认为空 类属性:属于类的对象 方法属性:不属于类的对象 私 ...
新手必须掌握的Linux命令(上)
1.1强大好用的Shell 通常来讲,计算机硬件是有运算器,控制器,存储器,输入/ 输出设备等共同组成的,而让各种硬件设备各司其职且又能协同运行的东西就是系统内核.Linux系统的内核负责完成对 ...
-
mysql count函数加条件总结
2020-11-12 17:42:07最近发现在处理Mysql问题时,count()函数频繁上镜,常常出现在分组统计的情景下,但是有时候并不是使用group by分好组就可以直接统计了,比如说一个常见的需求,统计每个班级男生所占的比例,这种情况一般会按照班级...文章目录
前言
最近发现在处理Mysql问题时,
count()
函数频繁上镜,常常出现在分组统计的情景下,但是有时候并不是使用group by
分好组就可以直接统计了,比如说一个常见的需求,统计每个班级男生所占的比例,这种情况一般会按照班级分组,但是分组内不但要统计班级的人数,还要统计男生的人数,也就是说统计是有条件的,之前确实没有考虑过怎样实心,后来查询了资料,总结在这里,方便日后查找使用。Mysql中
count()
函数的一般用法是统计字段非空的记录数,所以可以利用这个特点来进行条件统计,注意这里如果字段是NULL
就不会统计,但是false
是会被统计到的,记住这一点,我们接下来看看几种常见的条件统计写法。测试环境
Windows 10
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.21-log MySQL Community Server (GPL)
Copyright © 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.准备工作
- 新建一个Mysql数据表
a
,包含id
和num
两个字段
mysql> create table a(id int, num int); Query OK, 0 rows affected (0.04 sec)
- 插入测试数据,为了看
count()
函数的效果,我们插入两个空数据
mysql> insert into a values (1,100),(2,200),(3,300),(4,300),(8,null),(9,null); Query OK, 6 rows affected (0.01 sec) Records: 6 Duplicates: 0 Warnings: 0
- 查询表
a
中的数据,与后面的统计做比较
mysql> select * from a; +----+------+ | id | num | +----+------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | | 4 | 300 | | 8 | NULL | | 9 | NULL | +----+------+ 6 rows in set (0.09 sec)
- 调用
count()
函数看效果,如果使用count(*)
会查询出所有的记录数,但如果使用count(num)
发现只有4条数据,num
为NULL
的记录并没有统计上
mysql> select count(*) from a; +----------+ | count(*) | +----------+ | 6 | +----------+ 1 row in set (0.03 sec)
mysql> select count(num) from a;
+------------+
| count(num) |
+------------+
| 4 |
+------------+
1 row in set (0.04 sec)条件统计
count()
函数中使用条件表达式加or null
来实现,作用就是当条件不满足时,函数变成了count(null)
不会统计数量
mysql> select count(num > 200 or null) from a; +--------------------------+ | count(num > 200 or null) | +--------------------------+ | 2 | +--------------------------+ 1 row in set (0.22 sec)
count()
函数中使用if
表达式来实现,当条件满足是表达式的值为非空,条件不满足时表达式值为NULL
;
mysql> select count(if(num > 200, 1, null)) from a; +-------------------------------+ | count(if(num > 200, 1, null)) | +-------------------------------+ | 2 | +-------------------------------+ 1 row in set (0.05 sec)
count()
函数中使用case when
表达式来实现,当条件满足是表达式的结果为非空,条件不满足时无结果默认为NULL
;
mysql> select count(case when num > 200 then 1 end) from a; +---------------------------------------+ | count(case when num > 200 then 1 end) | +---------------------------------------+ | 2 | +---------------------------------------+ 1 row in set (0.07 sec)
总结
使用
count()
函数实现条件统计的基础是对于值为NULL
的记录不计数,常用的有以下三种方式,假设统计num
大于200的记录select count(num > 200 or null) from a;
select count(if(num > 200, 1, null)) from a
select count(case when num > 200 then 1 end) from a
- 新建一个Mysql数据表
-
深入理解PHP中的count函数
2018-04-20 15:55:28在遍历数组的时候经常需要先计算数组的长度作为循环结束的判断条件,而在PHP里面对数组的操作是很频繁的,因此count也算是一个常用函数,下面研究一下count函数的具体实现。countint count ( mixed $array_or_... -
JNI中调用Java函数
2022-04-08 15:03:39JNI调用Java函数,主要是在JNI中使用反射调用Java中的函数。 1、Java代码: package com.my.hawk.jni2; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.util.Log... -
Matlab中一个函数调用另外一个函数的操作方法
2021-04-18 04:08:32Matlab中一个函数调用另外一个函数的操作方法方法一:主函数调用子函数首先在Matlab中新建一个m文件函数 Untitled2(),Untitled2()为主函数,然后在函数下方添加一个子函数count(i),主函数中调用子函数,代码如下:... -
Matlab中一个函数调用另外一个函数的操作步骤
2021-04-18 04:08:44Matlab中一个函数调用另外一个函数的操作步骤作者:小安 来源:PC下载网时间:2019-11-18 13:27:35最近很多伙伴才刚刚安装入手Matlab这款软件,而本节就重点介绍了关于Matlab中一个函数调用另外一个函数的操作步骤,还... -
VBA中调用Excel函数
2020-07-28 17:11:11结束时打开:Excel.Application.EnableEvents =True 调用excel 函数:j= excel.Application.WorksheetFunction.vlookup() (on error resume next) j= excel.Application.WorksheetFunction.xxxx example: 求Excel... -
python中怎么在一个函数内调用另外一个函数,类似C语言那样的
2020-12-05 05:33:282016-03-31 回答函数式编程是使用一系列函数去解决问题,按照一般编程思维,面对问题时我们的思考方式是“怎么干”,而函数函数式编程的思考方式是我要“干什么”。 至于函数式编程的特点暂不总结,我们直接拿例子来... -
C++ 函数调用时间开销
2019-09-14 14:52:26C++函数调用时间开销1.前言2.函数调用约定3.函数类型3.1.普通函数3.2.模板函数3.3 内联函数3.4 宏函数3.4 虚函数4.函数调用开销测试附页 1.前言 调用函数的... -
Nag.js:在 settimeout 期间只调用一次函数
2021-06-21 11:26:25仅在调用了由option.count给定的次数的包装函数后才执行回调。 例子: var fn = Nag({count:3}, function(){console.log("called");}) fn(); fn(); fn(); fn(); // prints `called` fn(); // prints `called` ... -
C++函数定义和调用过程(超详细)
2021-05-22 08:33:53形参列表:调用函数的程序模块可以向其发送数据。形参列表是保存传递给函数的值的变量列表。如果没有值传递给函数,则其形参列表为空。主体:函数的主体是处理函数正在执行的任务的一组语句。这些语句包含在一组大... -
全局变量的使用,函数func1中引用全局变量count,函数func1中调用函数func2
2008-12-26 22:17:33定义count变量是全局变量,定义temp变量是局部变量, 函数func1中引用全局变量count,函数func1中调用函数func2 -
使用python访问父函数中调用的子函数中父函数的变量
2020-12-16 01:18:35在Python3.4中,我想调用一个在父函数之外定义的子函数,它仍然可以访问父函数的作用域(参见下面的示例)。虽然为了便于查看,我在下面的示例中将函数命名为parent和child,但我所考虑的函数具有非常独立的任务,因此... -
fscanf 函数的正确调用形式是_fscanf函数的正确调用形式_fscanf()函数的正确调用形式是
2021-05-23 00:39:17若调用fputc函数输出字符成功,则其返回值是________A)EOF B)1C)0D)输出的字符15 已知函数的调用形式:fread(buf,size,count,fp),参数buf的含义是______A)一个整型变量,代表要读入的数据项总数B... -
(C语言)编写函数对字符串中的字符计数
2019-11-26 18:54:25(要求在count函数中通过实参(char str)传入字符串及输出统计结果)(参考函数原型:void count(char str)) 输入输出格式要求: 字母,数字,空格 例如: str为12asddCSDA sds23244354 输出为11,10,2... -
python - 函数的封装与调用
2020-12-04 04:59:55函数的定义,函数名,函数体以及函数的调用1.函数的定义语法:def 函数名():函数体2.函数名的定义与变量名命名一样3.函数的封装与调用#函数的封装defyue():print('美女,约不约')print('不约')print('我这么帅,不约... -
菜单调用各种函数
2019-04-11 18:32:39"请输入你想调用函数的序号:" ) ; scanf ( "%d" , & a ) ; switch ( a ) { case 1 : JudgePrime ( ) ; break ; case 2 : JudgeNar ( ) ; break ; case 3 : CountDivisor ( ) ; break ; ... -
递归调用函数
2020-03-23 18:49:14函数直接或间接的调用自己就是函数的递归调用。 【函数调用自己】 二、【算法1】通过函数的递归调用计算n! n!=1*2*3*...*n 当n=5时:5!=1*2*3*4*5 n!=1 (当n=1) n*(n-1)! (当n>1) 当n=5时:5*4! 4!=4*... -
MySQL调用存储过程和函数
2019-09-01 15:00:27存储过程和函数有多种调用方法。存储过程必须使用call语句调用,并且存储过程和数据库相关,如果要执行其他数据库中的存储过程,需要指定数据库名称。例如call dbname.procname。存储函数的调用与MySQL中预定义的... -
mysql中count函数使用方法详解
2016-04-09 17:18:40count函数是用来统计表中或数组中记录的一个函数,下面我来介绍在mysql中count函数用法与性能比较吧。 count(*) 它返回检索行的数目, 不论其是否包含 NULL值。 SELECT 从一个表中检索,而不检索其它的列,... -
python封装函数调用
2020-04-08 16:35:36定义: 一个.py文件就是一个模块(把一个函数写入py文件中存起来被其它py文件调用) 1.模块管理函数 定义: 模块管理函数就是将函数的定义放到一个.py文件中.可以在其他.py文件中通过import关键字导入模块.导入 后就... -
python动态调用函数
2019-05-10 18:05:02举例 文件 windows_params 包含两个方法,两个参数 a = 1 b = 2 def count(): print('count') ...然后来调用啦 import windows_params as lp def invoke_method(method): value = eval('lp.'+met... -
调用什么函数需要用到什么头文件
2019-06-13 16:59:44※调用strcmp函数要用到#include <cstring> / #include <string.h> 例子:比较char型字符串大小,详情见算法笔记4.1.3 bool cmp (Student a,Student b){ if(a.score!=b.score)return a.score>b.... -
ORACLE存储过程调用自定义函数
2018-03-22 13:21:22碰到一个存储过程里面要使用多张临时表的时候就要多次重复粘贴该代码了,那为什么不将创建临时表的语句独立出来形成函数,然后在存储过程里面调用呢? 因此建立一个BI_TEMP_TAB的函数,接收建表语句V_SQL和表名V_... -
JPA如何调用存储函数
2017-11-06 18:35:12因系统需求,需要调用oracle数据库中的存储函数,在网上找了许多篇文章都没有满足我的条件, 返回值和OUT值同时能获取到,JPA的API中貌似没有,反正我是没找到,后来同事找的一个网页 上找到了解决方法,就是... -
如何使用VBS调用VBA函数
2020-05-05 22:42:58・截取图片后,截图的图片置于最底层 :调用VBA函数pictureToBack ・Case中的的一些内容,自动截图,并保存到Evidence中 :调用VBA函数 getCaseInfoAsPicture ■VBA的代码 '把图片置于底层 Sub ... -
C++ 根据字符串 调用同名函数
2016-09-02 17:18:52根据字符串,调用与字符串同名函数: #include #include #include typedef void (*pFunc)(); std::map strFuncMap; void func1() { printf("this is func1!\n"); } void func2() { printf("this is func2!\...