mysql统计某字段中某值的次数

现在有两张表

一张用户表us_user(id : 用户ID、group_id : 分组ID、del_flag : 删除标记(0正常、1删除))

一张分组表us_group(id : 分组ID 、name : 分组名称、del_flag : 删除标记(0正常、1删除))

如果del_flag为1则不能将数据显示,相当于不存在的数据

要统计选择分组的人数,如果没有人选择也需要显示分组且人数为0

SELECT g.id,g.name,t.vipNum FROM us_group g 
LEFT JOIN (select group_id, count( * ) AS vipNum 
FROM us_user u
WHERE u.del_flag=0 
GROUP BY group_id) t ON g.id=t.group_id WHERE del_flag=0

<select id="selectDetailByExample" parameterType="map" resultMap="BaseResultMap">
  SELECT g.id,g.name,t.vipNum FROM us_group g
  <if test="distinct">
    distinct
  </if>
  LEFT JOIN (SELECT group_id, count( * ) AS vipNum
  FROM us_user
  WHERE del_flag=0
  GROUP BY group_id) t ON g.id=t.group_id
  <where>
    <if test="name != null">
      AND name LIKE concat('%',#{name},'%'))
    </if>
    AND del_flag=0
  </where>
</select>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值