用的是Map,List>接收,

sql语句中int类型的值做了聚合运算,

满足上述两个条件。

java中去取value的值就会变成BigDecimal 类型

经过实测:mybatis 中的sql语句int类型 java接收的几种情况。

实测案例:

1.用resultType="int" (返回类型用int)

1.1 如果 resultType="int", id 没做运算,

select id from ting_cmdb_physical_equipment where id=2897;

显示结果,java可以用 int 接收。

1.2 如果 resultType="int", id 做运算,

select id-1 as id

from ting_cmdb_physical_equipment where id=2897;

显示结果:java可以用int接收

1.3 id 做聚合运算

select sum(id) as id

from ting_cmdb_physical_equipment where id=2897;

运算结果:java可以用int接收

2.用resultType="map"(返回类型用Map)

2.1 id没做运算

select id from ting_cmdb_physical_equipment where id=2897;

运算结果:java可以用int 接收

2.2 id做运算

select id-1 as id

from ting_cmdb_physical_equipment where id=2897;

运算结果:java要用long类型接收

2.3 id做聚合函数运算

select sum(id) as id

from ting_cmdb_physical_equipment where id=2897;

运算结果:java用BigDecimal接收

3.resultType="map" (返回类型用list>)

3.1 id没做运算

select id as id

from ting_cmdb_physical_equipment where id=2897;

运算结果:java可以用int接收

3.2 id做运算

select id-1 as id

from ting_cmdb_physical_equipment where id=2897;

运算结果java可以用long接收

3.3 id做聚合运算

select sum(id) as id

from ting_cmdb_physical_equipment where id=2897;

运算结果:java可以用BigDecimal接收

总结类型\int值没做运算做了运算做了聚合运算intintintint

MapintlongBigDecimal

ListintlongBigDecimal

为什么会出现BigDecimal类型呢,

mysql int和bigdecimal,mysql的 int 类型,刨析返回类型为BigDicemal 类型的奇怪现象相关推荐

  1. mal是什么类型对应的java类型是什么,【Java】mysql的 int 类型,刨析返回类型为BigDicemal 类型的奇怪现象...

    用的是Map,List>接收, sql语句中int类型的值做了聚合运算, 满足上述两个条件. java中去取value的值就会变成BigDecimal 类型 经过实测:mybatis 中的sql ...

  2. mysql int 最大显示宽度_mysql int 整数类型 解释显示宽度 和 存储宽度

    存储宽度 是实际存储记录宽度 存储宽度默认是写死的,就算修改宽度也改变不了,改变的是显示宽度 ============有符号和无符号int============= 创建一个 无符号的 int 整数类 ...

  3. Mysql中的varchar类型转换成int类型

    Mysql中的varchar类型转换成int类型 1.实战案例 1.1 student表结构 mysql> desc student; +----------+-------------+--- ...

  4. mysql int类型需要指定长度_mysql中整数类型后面的数字,是不是指定这个字段的长度?比如int(11),11代表11个字节吗?...

    原先对mysql不太理解,但也没有报错.但理解的不够深入.这次补上. 原来以为int(11)是指11个字节,int(10)就是10个字节.我错了. http://zhidao.baidu.com/li ...

  5. mysql Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT

    使用mysql的时候,用到int类型的蛮多,需要注意一下: 1. 值的范围 Type Storage Minimum Value Maximum Value   (Bytes) (Signed/Uns ...

  6. mysql中tinyint、smallint、int、bigint的区别介绍

    tinyint 从 -2^7 (-128) 到 2^7 - 1 (123) 的整型数据.存储大小为 1 个字节. unsigned 是从 0 到 255 的整型数据. 所以建表的时候 只能是tinyi ...

  7. int mysql_「MYSQL」MYSQL中的int(11)到底代表什么意思?

    一.前言 在工作中经常要与mysql打交道,但是对mysql的各个字段类型一直都是一知半解,因此写本文总结记录一番. 二.简介 对于int类型的一些基础知识其实上图已经说的很明白了,在这里想讨论下常用 ...

  8. 一次事故,我对MySQL时间戳存char(10)还是int(10)有了全新的认识

    摘要:char类型字段想走索引的话,必须用引号括起来.如果是时间戳等类型的纯数字,建议还是存为int型吧. 本文分享自华为云社区<一次事故,我对MySql时间戳存char(10)还是int(10 ...

  9. 用通俗易懂的大白话彻底搞明白mysql的数据类型以及mysql中的int(11),这个11到底是啥?

    今天抽时间来讲一下mysql里的知识点,之前有不少人问过我,mysql中的int(11),这个11到底是啥意思?是11位的意思吗?你是否也想过这个问题,是否也有这个疑问? ok,今天就展开来讲一下,用 ...

最新文章

  1. 为什么Google会优先使用while(1); 他们的JSON响应?
  2. 谷歌希望通过 Adiantum 为更多人提供加密功能
  3. java 模式匹配算法_用Java匹配模式
  4. android fastjson漏洞_【漏洞预警】Fastjson 远程代码执行漏洞(暂无PoC)
  5. Qt OpenGL 问题总结
  6. [分享] 精神崩溃的老鼠
  7. IntelliJ IDEA中快捷键大全+出现的问题
  8. 每个Java学习者都会犯的10大常见错误1
  9. Android安全笔记-Intent和PendingIntent基本概念
  10. 19 MM配置-BP业务伙伴-定义编码范围
  11. 软银三亿重金押注的RPA到底是什么,它能取代人力吗?
  12. Scala入门(一):直接在eclipse上安装Scala IDE
  13. Spring 整合 Redis
  14. 如何绘制逻辑图 — 8.逻辑的表达:数据逻辑
  15. ros参数服务器调用_ROS路由与秒开缓存服务器对接时如何设置使用
  16. 微信永久封号怎么解封?微信社交场景被限制解决办法
  17. 成长型思维和固定型思维
  18. 感恩节(11.28)
  19. C语言简单递归实现字符串逆序输出
  20. <STM32F103ZET6>通过串口更新flash字库(包括LVGL字库烧写)

热门文章

  1. 负载均衡续:万亿流量场景下的负载均衡实践
  2. 面向领域的微服务架构
  3. Spring Cloud架构的各个组件的原理分析
  4. 在阿里当PM都需要做什么?
  5. 手把手教你搭建 ELK 实时日志分析平台
  6. 手把手带你剖析 Springboot 启动原理!
  7. 5年时间服务器从0到200,一个创业公司的架构野蛮生长史
  8. 一个蚂蚁攻城狮曾经的辛酸面试历程!
  9. 绩效管理是什么?怎么做绩效管理?
  10. 分享Leangoo敏捷工具操作视频