1. 表名[发电机列表] 发电机编号 使用地点 2.表名[发电记录] 发电机编号 发电日期 发电时长 3.表名[维护记录] 发电机编号 上次维护日期 --select a.*,sum(发电时长) as 发电总时长 from 发电机列表 a left join ( select * from 维护记录 b where not exists(select 1 from 维护记录 where 发电机编号 = b.发电机编号 and 上次维护日期> a.上次维护日期) c on a.发电机编号 = c.发电机编号 left join 发电记录 d on a.发电机编号 = d.发电机编号 where d.发电日期 >= c.上次维护日期
try-- select sum(发电时长) from 发电记录 t where not exists(select * from 维护记录 where 发电机编号=t.发电机编号 and 上次维护日期>t.发电日期)
select m.发电机编号 , isnull(n.总运行时间,0) 总运行时间 from 发电机列表 m left join ( select a.发电机编号 , sum(a.发电时长) 总运行时间 from 发电记录 a , 维护记录 b where a.发电机编号 = b.发电机编号 and a.发电日期 >= b.上次维护日期 group by a.发电机编号 ) n on m.发电机编号 = n.发电机编号
select m.发电机编号 , isnull(n.总运行时间,0) 总运行时间 from 发电机列表 m left join ( select a.发电机编号 , isnull(sum(a.发电时长),0) 总运行时间 from 发电记录 a left join 维护记录 b on a.发电机编号 = b.发电机编号 and a.发电日期 >= b.上次维护日期 group by a.发电机编号 ) n on m.发电机编号 = n.发电机编号
select sum(发电时长) as 发电时长 from 发电记录 A inner join 维护记录 B on A.发电机编号 = B.发电机编号 where 发电日期 > 上次维护日期
select a.[发电机编号],a.[使用地点],sum(b.[发电时长]) from [发电机列表] a,[发电记录] b,[维护记录] c where a.[发电机编号]=b.[发电机编号] and a.[发电机编号]=c.[发电机编号] and b.[发电时间]>c.[上次维护日期] group by a.[发电机编号],a.[使用地点]
发电机编号 使用地点 2.表名[发电记录]
发电机编号 发电日期 发电时长 3.表名[维护记录]
发电机编号 上次维护日期
--select a.*,sum(发电时长) as 发电总时长
from 发电机列表 a
left join
( select * from 维护记录 b where not exists(select 1 from 维护记录 where 发电机编号 = b.发电机编号 and 上次维护日期> a.上次维护日期) c
on a.发电机编号 = c.发电机编号
left join 发电记录 d
on a.发电机编号 = d.发电机编号
where d.发电日期 >= c.上次维护日期
select sum(发电时长)
from 发电记录 t
where not exists(select * from 维护记录 where 发电机编号=t.发电机编号 and 上次维护日期>t.发电日期)
left join
(
select a.发电机编号 , sum(a.发电时长) 总运行时间
from 发电记录 a , 维护记录 b
where a.发电机编号 = b.发电机编号 and a.发电日期 >= b.上次维护日期
group by a.发电机编号
) n
on m.发电机编号 = n.发电机编号
left join
(
select a.发电机编号 , isnull(sum(a.发电时长),0) 总运行时间
from 发电记录 a left join 维护记录 b
on a.发电机编号 = b.发电机编号 and a.发电日期 >= b.上次维护日期
group by a.发电机编号
) n
on m.发电机编号 = n.发电机编号
select sum(发电时长) as 发电时长
from 发电记录 A
inner join 维护记录 B
on A.发电机编号 = B.发电机编号
where 发电日期 > 上次维护日期
from [发电机列表] a,[发电记录] b,[维护记录] c
where a.[发电机编号]=b.[发电机编号] and
a.[发电机编号]=c.[发电机编号] and b.[发电时间]>c.[上次维护日期]
group by a.[发电机编号],a.[使用地点]