统计报表sql
select t2.checkunit_uuid, t2.checkunit_zone, count(t.uuid) as atotal, sum(decode(t.get_card_status, 1, 1, 0)) as getTocal, sum(decode(t.get_card_status, null, 1, 0))as noGetTocal, to_char( round(sum(decode(t.get_card_status, 1, 1, 0))/count(t.uuid)*100,10),'fm990.00')||'%' as comp from examineedetail t, examineedate t2 where t.uuid = t2.detail_uuid and t.credential_code is not null and t.plan_uuid = 'cbaa6d10-68a6-4ac2-8932-dd87c00f16fd' and t2.checkunit_uuid = '6063e9d1-c2c3-41ab-b349-574a17098e4c' group by rollup( t2.checkunit_zone,t2.checkunit_uuid) having grouping(t2.checkunit_uuid) = '0' or (grouping(t2.checkunit_uuid) = '1' and grouping(t2.checkunit_zone) = '1' )
select t2.checkunit_uuid as checkId, t2.checkunit_zone as checkZone, count(t.uuid) as atotal, sum(decode(t.get_card_status, 1, 1, 0)) as getTocal, sum(decode(t.get_card_status, null, 1, 0))as noGetTocal, to_char( round(sum(decode(t.get_card_status, 1, 1, 0))/count(t.uuid)*100, 10), 'fm990.00')||'%' as comp from examineedetail t, examineedate t2 where t.uuid = t2.detail_uuid and t.credential_code is not null and t.plan_uuid='cbaa6d10-68a6-4ac2-8932-dd87c00f16fd' group by rollup((t2.checkunit_uuid, t2.checkunit_zone))
兄弟帮忙给写的,学习下