select distinct TT.prod_id, tt.creteTime, tt.inspection_time, tt.cnt
from (select s.prod_id,
min(s.datetime_created) over(partition by s.prod_id) as creteTime,
max(s.inspection_time) over(partition by s.prod_id) as inspection_time,
sum(s.complete_count) over(partition by s.prod_id) as cnt
FROM qms.oqc_inspection_sample s
WHERE length(s.prod_id) = 14 and s.prod_id like '6%'
and s.inspection_result = '合格'
and s.status in ('已检验', '已生成报告')) tt
这里使用了分析函数,使用分组中的一组,进行求和 ,求最大值,最小值。
问题:
一:我这里使用了 DISTINCT去重,有没有效率更好的方式去重呢
二:分析函数不能使用条件过滤,比如某个分组的数据,我想只取某个字段等1的值的求和。
浙公网安备 33010602011771号