mysql group_concat 的分组,以及输出到Java的String
来源:互联网 发布:淘宝秒杀需要刷新 编辑:程序博客网 时间:2024/05/21 10:14
本文只关于如何输出到java,不涉及数据库连接,bean类创建使用的教学。需要完整java连接数据库,到用bean取出数据的,自行度娘搜索。
结果如下(部分,字段太多,截不全,下图为失败案例。):
关于mysql怎么用group_concat 分组,网上有很多教程,这里不再赘述。
假设我们拥有以上数据,这个时候需要对颜色分组。以goodsId=1002为例。
sql语句:
String sql ="SELECT serialNumber,goodsId,fatherGoodsId,"+"GROUP_CONCAT(goodsCode) goodsCode,color,GROUP_CONCAT(CONVERT(size,char)) size," +"GROUP_CONCAT(CONVERT(stock,char)) stock,"+"GROUP_CONCAT(CONVERT(price,char)) price FROM goods_tb WHERE goodsId=1002 group by color";
验证一下语句正不正确:
上图正确。其中goodsCode字段错误,作为参考对比。不过本身没数据,在这里也无所谓。
假设有 searchSql 方法(自己实现),可以查询sql语句并返回List列表。
首先要有一个bean去接收。
public class GoodsBean{ /*如果数据库字段类型为bigint,要对应为java的bigint,注意需要设置为无符号,否则要对应java Long类型*/ private BigInteger serialNumber; private String color; private int goodsId; private int fatherGoodsId; private String goodsCode; private String size; private String stock; private String price;//因为不是单个输出,是集合输出,所以字段price的decimal在bean里变成String去获得集合。 //set和get自己生成。}
开始用searchSql函数。
List<GoodsBean> goodsBean =new ArrayList<GoodsBean>();goodsBean = (List<GoodsBean>) searchSql(sql);
其实本文重点在于
GROUP_CONCAT(CONVERT(size,char)) size 类似这样的句子。
之前我不会用这个sql函数,一直是类似这么用的
GROUP_CONCAT(CONVERT(size,char)),就是第三张图显示的GROUP_CONCAT(goodsCode)字段效果,不过有数据,不能获取到。网上说是Blob类型获取。不得而知。没试过。
这样的结果导致对应到bean的size变量一直为空,也就是取不到数据。就是第二张图显示的,没有size字段。只有GROUP_CONCAT(CONVERT(size,char))字段
正确用法是
GROUP_CONCAT(CONVERT(size,char)) size
在命令窗口输出,会包含GROUP_CONCAT(CONVERT(size,char)) 和size两个字段。
如果java获取。反正前者我获取不到数据。size对应bean里的String size;是字符串。
group by color 这句也是很重要的,没有这句,就没有分组的依据。只会输出一个颜色。并且会把符合条件的其他颜色的记录 全部加到那个颜色上。
CONVERT,CAST用法,度娘。
最后拿到的String数据,自己要怎么处理就怎么处理,不再赘述。
- mysql group_concat 的分组,以及输出到Java的String
- mysql group_concat 分组,多字段统一排序及输出数据到java
- mysql 分组查询以及显示各个分组所有的温度和时间要用GROUP_CONCAT
- mysql的GROUP_CONCAT(expr),分组合并字段
- mysql分组后group_concat()的使用场景总结
- mysql 分组拼接 GROUP_CONCAT
- mysql group_concat聚合分组
- mysql的group_concat函数
- mysql的GROUP_CONCAT
- mysql的 函数 group_concat , substring_index 的使用以及 分库分表操作
- 浅析MySQL中concat以及group_concat的使用
- 【MySQL】mysql中函数DISTINCT、group by、CONCAT、GROUP_CONCAT的使用以及mysql group_concat函数被截断的问题
- mysql分组并多行拼接--group_concat和group by的使用
- Mysql的GROUP_CONCAT()函数使用方法
- mysql中GROUP_CONCAT的应用
- mysql group_concat函数的好处
- Mysql的GROUP_CONCAT()函数使用方法
- MySQL的concat,concat_ws,group_concat
- 【C++】POJ 刷题指南
- 三角剖分算法
- android FragMent使用笔记
- 给Android Studio代码编辑器设置背景图片
- java内存管理与继承
- mysql group_concat 的分组,以及输出到Java的String
- 【代码库】日期工具类
- 判断JS数据类型的四种方法
- jde 判断闰年,破月以及计算总租金(破月的话最后一个月要按实际天数来算!)
- 【算法基础(第五版)】例3.13 序列对准求最小值
- Tampermonkey安装与使用
- Spring 中Bean的生命周期
- python中导入win32com.client出错问题
- 【英语学习】Why we can't learn English as we want?