一、功能描述
本篇博客要实现对项目中所涉及到的参与5个培训项目人数和人次信息,将该信息进行Echarts数据展示。
思路如下:首先通过SQL语句查询出一共有几个培训类型用作Echarts的横坐标展示,将查询到的培训类型采用一个ArrayList数组进行存放,然后通过SQL语句将培训类型作为参数查找培训人数信息和培训人次信息。
该项目中涉及到5个培训类型,因此,会对应5个项目的培训人数信息和培训人次信息。通过ArrayList数组存储查询到的5个项目培训人次信息,同理,用另一个ArrayList数组存储参与5个项目的人次信息。
最后构建HashMap将上述三个ArrayList存放进去。
二、数据库数据信息
//查询所有的培训类型
select distinct (traintype) as traintype from v_all
//查询参与各个培训类型的人数信息
SELECT count(*) as traintypeNumber,traintype from v_all group by traintype
//查询参与各个培训类型的人次信息
select count(distinct teacherNo) as traintypePeopleTime,traintype from v_all group by traintype
上述查询语句的结果如下所示:
数据库信息如下所示:
三、Java后台代码如下
//mapper层代码
@Select("select distinct (traintype) as traintype from v_all")
public List<All> getCountTraintype();
@Select("select count(*) as traintypePeopleNumber from v_all where traintype= #{traintype}")
public int getCountTraintypePeopleNumber(@Param( "traintype" ) String traintype);
@Select("select count(distinct teacherNo) as traintypePeopleTime from v_all where traintype= #{traintype}")
public int getCountTraintypePeopleTime(@Param( "traintype" ) String traintype);
//s