Hao_RanYang
2019-11-14 14:39
采纳率: 40%
浏览 693
已采纳

怎么根据时间和姓名计算员工的工资

这是数据库查询到的数据,java获取到数据后,怎么根据时间和姓名计算工资(同一时间和同一姓名的金额需要累加)

图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 空白如空 2019-11-14 16:10
    已采纳

    感觉你可以直接用sql来进行(同一时间和同一姓名的金额需要累加)来进行这个操作,不用利用java

    点赞 打赏 评论
  • 毕小宝 2019-11-14 15:19

    遍历响应数据,以 audit_date_name 为 key ,获取 money ,如果存在则累计,不存在,则新建,用 HashMap:

    Map<String,Double> result = new HashMap<String,Double>();
    while(rs.next(){
        String date = rs.getString("audit_date");
            String name=rs.getString("name");
            Double money = rs.getDouble("money");
            String key = date+name;
            if(result.contains(key)){//存在,则累计
                  result.put(key,result.get(key)+money);
            }else{//不存在,则新加
                  result.put(key,money);
            }
    }
    
    点赞 打赏 评论
  • 创业的鱼 2019-11-14 17:35
    select audit_date, name, sum(money) as sum_money from yourTable group by audit_date, name
    

    把yourTable替换成你的表名就可以。

    点赞 打赏 评论

相关推荐 更多相似问题