sqlserver或报表里从指定的条件后开始计数

    各位大神好,我想统计公司模具正常生产后每个月出问题的次数,以mmid 为分组,在指定判断条件为“完成”后,再跟据liid为唯一值进行计数出值的判定计数,

微信图片_20221020133320.jpg

图1是完成统计后的效果,

002.jpg

图2是我要统计的数据,

0003.jpg

FineReport wzn111 发布于 2022-10-20 13:51 (编辑于 2022-10-21 14:15)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
用户k6280494Lv6资深互助
发布于2022-10-20 14:19(编辑于 2022-10-20 14:20)

SELECT mmid,COUNT(mmid) ct FROM 表 WHERE upmachcircs='完成' GROUP BY mmid

这样?

  • wzn111 wzn111(提问者) 不是,你这语句是直接统计所有完成的项
    2022-10-21 14:09 
  • 用户k6280494 用户k6280494 回复 wzn111(提问者) 那你就安upmachcircs这个字段分组啊 SELECT mmid,upmachcircs,COUNT(1) ct FROM 表 GROUP BY mmid,upmachcircs
    2022-10-21 14:13 
  • wzn111 wzn111(提问者) 回复 用户k6280494 我这需要统计的是模具信息,统计模具在一段时间内正常使用后,再次出现问题的次数和时间间隔,所能不能分组统计
    2022-10-21 14:20 
  • 用户k6280494 用户k6280494 回复 wzn111(提问者) 那就再加时间分组呢
    2022-10-21 14:24 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-10-20 14:11

前面指upmachcircs='完成'?后面这半句又是什么意思?

image.png

  • wzn111 wzn111(提问者) upmachcircs=\'完成\' 这是状态栏,在状态栏里,跳过\'完成\'这个字段去计数其它状态的数量,
    2022-10-21 14:02 
  • Z4u3z1 Z4u3z1 回复 wzn111(提问者) 跳过? SELECT mmid,upmachcircs,COUNT(MMID) AS SL FROM TABLE WHERE upmachcircs<>\'完成\' group BY mmid,upmachcircs?没这么简单吧
    2022-10-21 14:06 
  • wzn111 wzn111(提问者) 回复 Z4u3z1 肯定是没这么简单,我上传新图了,你好,我能加你QQ吗?我QQ 99885499,不白浪费你的时间,弄好了我好感谢你
    2022-10-21 14:22 
最佳回答
0
快乐星光Lv5中级互助
发布于2022-10-20 14:22(编辑于 2022-10-20 14:23)

直接在sql里面好统计一些:select mmid,count(1) as ct from table1 where liid="完成" group by mmid

  • wzn111 wzn111(提问者) 不是,我要统计的是 upmachcircs=\'完成\' 前后其它状态下的数量,统计的结果我第一张图里有,第一张图里 id 项 123 是我要的计数项,id 里第4项是完成 完成状态下就不统计,
    2022-10-21 14:08 
  • 快乐星光 快乐星光 回复 wzn111(提问者) 你这个需要添加一个字段,将两个相邻 完成 行的中间行赋值为同一内容( 比如miid+liid(完成) )。然后再group by 。估计需要写存储。
    2022-10-24 13:13 
  • 3关注人数
  • 403浏览人数
  • 最后回答于:2022-10-21 14:15
    请选择关闭问题的原因
    确定 取消
    返回顶部