select operation_name, sum(output_qty), groupArray(concat(formatDateTime(prod_time_range,'%H'),'@',formatDateTime(prod_time_range,'%F %T'),'@',toString(output_qty))) aa ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '08@%',aa)[1])[3],2) as oq08 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '09@%',aa)[1])[3],2) as oq09 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '10@%',aa)[1])[3],2) as oq10 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '11@%',aa)[1])[3],2) as oq11 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '12@%',aa)[1])[3],2) as oq12 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '13@%',aa)[1])[3],2) as oq13 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '14@%',aa)[1])[3],2) as oq14 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '15@%',aa)[1])[3],2) as oq15 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '16@%',aa)[1])[3],2) as oq16 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '17@%',aa)[1])[3],2) as oq17 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '18@%',aa)[1])[3],2) as oq18 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '19@%',aa)[1])[3],2) as oq19 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '20@%',aa)[1])[3],2) as oq20 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '21@%',aa)[1])[3],2) as oq21 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '22@%',aa)[1])[3],2) as oq22 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '23@%',aa)[1])[3],2) as oq23 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '00@%',aa)[1])[3],2) as oq00 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '01@%',aa)[1])[3],2) as oq01 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '02@%',aa)[1])[3],2) as oq02 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '03@%',aa)[1])[3],2) as oq03 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '04@%',aa)[1])[3],2) as oq04 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '05@%',aa)[1])[3],2) as oq05 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '06@%',aa)[1])[3],2) as oq06 ,toDecimal32OrZero(splitByChar('@' ,arrayFilter(x-> x like '07@%',aa)[1])[3],2) as oq07 from ( select base_code , factory_stage , workshop_name , output_qty , operation_name, data_date, prod_time_range from zh_dws.dws_mfg_equip_production_h where 1=1 and base_code = 'XM' AND prod_category_name2 = '电芯' and prod_category_name in ('电芯','半电芯','正极','负极') AND workshop_name = '${车间}' AND factory_stage = '${工厂}' ${if(len(日期) == 0,"and toString(data_date) = formatDateTime(subtractHours(now(),9),'%Y-%m-%d')","and toString(data_date) = ('" + 日期 + "')")} ${if(len(产线111) == 0,"and prod_line_name like 'C1%'","and prod_line_name like ('" + 产线111 + "%')")} ${if(len(工序111) == 0,"and operation_name = '切叠'","and operation_name = ('" + 工序111 + "')")} ) group by operation_name |
最佳回答 |
||||
0
|
|