实体类

  1. @Data
  2. public class MemberCouponCountDTO {
  3. private Long couponId;
  4. private Integer couponCount;
  5. }

Mapper

  1. @MapKey("couponId")
  2. Map<Long, MemberCouponCountDTO> getMemberCouponCountMap(@Param("memberId") Long memberId);

Dao

  1. <resultMap id="couponCountMap" type="net.super0.merchant.meta.entity.dto.MemberCouponCountDTO">
  2. </resultMap>
  3. <select id="getMemberCouponCountMap" resultMap="couponCountMap">
  4. SELECT coupon_id,count(*) `coupon_count` FROM sms_coupon_distribute
  5. WHERE member_id = #{memberId} AND `status` != -1
  6. GROUP BY coupon_id
  7. </select>

结果

  1. map:{624=MemberCouponCountDTO(couponId=624, couponCount=1), 672=MemberCouponCountDTO(couponId=672, couponCount=1), 726=MemberCouponCountDTO(couponId=726, couponCount=2), 665=MemberCouponCountDTO(couponId=665, couponCount=2), 667=MemberCouponCountDTO(couponId=667, couponCount=1), 668=MemberCouponCountDTO(couponId=668, couponCount=2), 700=MemberCouponCountDTO(couponId=700, couponCount=1), 716=MemberCouponCountDTO(couponId=716, couponCount=1), 669=MemberCouponCountDTO(couponId=669, couponCount=2), 717=MemberCouponCountDTO(couponId=717, couponCount=1), 622=MemberCouponCountDTO(couponId=622, couponCount=1), 718=MemberCouponCountDTO(couponId=718, couponCount=1)}