SQL语句以往一直多应用于财务数据中,在工程项目审计中应用不多。白山市审计局在对“暖房子”工程项目审计中,发现涉及单栋楼多达480个,若是每个都测量,时间来不及,为提高工作效率,尝试引用SQL语句用一些数据进行筛选,比对结果将可能存在的问题范围进一步缩小,取得很好的效果,提高了工作效率。如何利用SQL语句呢? 首先,是选取、整理数据。监理公司对480栋楼中每栋楼的外墙保温、墙面铲除、外墙涂料、屋面防水、屋面保温、塑钢窗、梯间涂料、梯间塑钢窗、防盗门等数据进行了测量。以监理公司数据为基础,并对数据按标段进行了汇总整理,共计16个标段480行数据。同时暖房办又根据各标段汇总数据的造价进行了汇总,形成了结算表。例如:(SELECT TOP 1000[序号],[栋号],[建筑面积],[单元数],[层数],[户数],[屋面],[保温],[墙体],[窗侧壁],[外墙涂料],[挂网抹胶],[防火带],[屋面保温],[屋面防水],[梯间涂料],[梯间窗],[防盗门]into监理表FROM[暖房子审计].[dbo].[′监理表′])。 其次,是对数据进行查询,确定表格数据类型。例如:(select序号,栋号,建筑面积,单元数,层数,户数,屋面,保温,墙体,窗侧壁,外墙涂料,挂网抹胶,防火带,屋面保温,屋面防水,梯间涂料,防盗门from监理表;select序号,栋号,结算价格墙面铲除,保温隔热墙,刷喷涂料,梯间塑钢窗,屋面防水,保温屋面,梯间墙面铲除,梯间涂料,单元门from结算表)。 再次,对监理表提供数据进行筛选。(1)查询总表select * from Sheet 1;(2)创建查询比率=保温面积/建筑面积大于0.6的表:create view查询比率as select序号,栋号,建筑面积,保温面积,CAST(保温面积/建筑面积as numeric(6,2)比率from Sheet 1 where保温面积/建筑面积>0.6;(3)查询比率=保温面积/建筑面积大于0.8,小于1:select序号,栋号,建筑面积,保温面积,CAST(保温面积/建筑面积as numeric(6,2)比率from Sheet 1 where保温面积/建筑面积between 0.8 and 1;(4)查询当屋面=′坡′,屋面保温<>0:select序号,栋号,建筑面积,保温面积,屋面,屋面保温,屋面防水from Sheet 1 where屋面=′坡′ and屋面保温<>0;(5)查询建筑面积是大面积楼房create view大面积楼房as select序号,栋号,建筑面积,保温面积,屋面保温,屋面防水,cast(建筑面积/层数/单元数/2 as numeric(10,2)平均面积数from sheet 1 where建筑面积/层数/单元数/2>100;(6)将视图\2相连比较,筛选出行需要重点关注的栋号select大面积楼房.序号,大面积楼房.栋号,大面积楼房.建筑面积,大面积楼房.保温面积,大面积楼房.屋面保温,大面积楼房.屋面防承,查询比率.比率,大面积楼房.平均面积数from查询比率join大面积楼房on查询比率.序号=大面积楼房.序号where比率>0.6: 最后,通过进一步查询,查找问题的SQL语句。 例1、查询建筑面积<保温面积:select序号,栋号,建筑面积,保温面积,屋面保温,屋面防水from Sheet 1 where建筑面积<保温面积order by序号; 例2、查询建筑面积<保温面积且建筑面积>1000:select序号,栋号,建筑面积,保温面积,屋面保温,屋面防水,CAST(保温面积-建筑面积as numeric(10,2)差值from Sheet 1 where建筑面积<保温面积and建筑面积>1000; 例3、梯间窗>100m2,其中出现此数据异常的是四标段电厂38#楼,和九标段金河小区123#楼:select序号,栋号,建筑面积,保温面积,屋面保温,屋面防水,梯间涂料,梯间窗,防盗门,avg(梯间窗)from Sheet 1 group by序号,栋号,建筑面积,保温面积,屋面保温,屋面防水,梯间涂料,梯间窗,防盗门having avg(梯间窗)100 例4、梯间涂料6个标段有问题:select序号,栋号,建筑面积,单元数,保温面积,屋面保温,屋面防水,梯间涂料,梯间窗,防盗门,cast(梯间涂料/单元数as numeric(10,2))from Sheet 1 group by序号,栋号,建筑面积,单元数,保温面积,屋面保温,屋面防水,梯间涂料,梯间窗,防盗门,梯间涂料/单元数having梯间涂料/单元数>800。 通过使用SQL语句,审计人员能迅速准确查找可能存在多计工程量的子项,并且到现场测量加以进一步核实,此种方法得到建设单位、监理单位、施工单位的认可,从而核减“暖房子”项目工程款达八百多万元,有效地节约了国家建设资金。