| | |
| | | ), |
| | | glass_info_temp AS ( |
| | | SELECT |
| | | gi.id, |
| | | gi.glass_id, |
| | | flow_card_id, |
| | | engineer_id |
| | | FROM |
| | | ( |
| | | SELECT |
| | | gi.flow_card_id, |
| | | gi.layer, |
| | | gi.thickness, |
| | | gi.filmsId |
| | | FROM hollow_flow_temp hft |
| | | gi.engineer_id, |
| | | ROW_NUMBER() OVER ( PARTITION BY gi.flow_card_id ,gi.layer ORDER BY COUNT( gi.glass_id ) DESC ) AS rn |
| | | FROM |
| | | hollow_flow_temp hft |
| | | INNER JOIN glass_info gi ON hft.flow_card_id = gi.flow_card_id |
| | | GROUP BY |
| | | gi.flow_card_id, |
| | | gi.engineer_id , |
| | | gi.layer |
| | | ) t |
| | | WHERE |
| | | rn = 1 |
| | | ), |
| | | glass_result AS ( |
| | | SELECT |
| | | t1.id, |
| | | t1.glass_id, |
| | | t1.flow_card_id, |
| | | t1.layer, |
| | | t1.thickness, |
| | | t1.filmsId |
| | | FROM |
| | | glass_info_temp t |
| | | INNER JOIN glass_info t1 ON t.engineer_id = t1.engineer_id |
| | | AND t.flow_card_id = t1.flow_card_id |
| | | ), |
| | | damage_ranked AS ( |
| | | SELECT |
| | |
| | | COUNT(DISTINCT t1.glass_id) as real_count, |
| | | COUNT(DISTINCT t.id) - COUNT(DISTINCT t1.glass_id) as lack_count, |
| | | COUNT(DISTINCT CASE WHEN t2.type IN (8,9) AND t2.status = 1 THEN t.glass_id END) as damage_count |
| | | FROM glass_info_temp t |
| | | FROM glass_result t |
| | | LEFT JOIN hollow_details_temp t1 ON t.glass_id = t1.glass_id |
| | | LEFT JOIN damage_latest t2 ON t.glass_id = t2.glass_id |
| | | GROUP BY t.flow_card_id, t.layer, t.thickness, t.filmsId |