楼主是不是要这样的功能
select sum(isnull(s.SignCount,TrainCount)) as Count from TrainInfo T left join SignInfo S
on T.TrainId=S.TrainId
select sum(isnull(s.SignCount,TrainCount)) as Count from TrainInfo T left join SignInfo S
on T.TrainId=S.TrainId
else sum(traincount) + sum(signcount)
end
from TrainInfo left join SignInfo on TrainInfo.TrainId=SignInfo.TrainId
else sum(traincount) + sum(signcount)
end
from TrainInfo left join SignInfo on TrainInfo.TrainId=SignInfo.TrainId
如果有报名人数哪个基数重复计算了 比如有3个人对TrainId=1的主题报名(每个人填的人数是1)那么基数就重复算3次了
想要的结果是28,谢谢
else max(traincount) + sum(signcount)
end
from TrainInfo
left join SignInfo on TrainInfo.TrainId=SignInfo.TrainId
结果是正确的,但是执行效率感觉毕竟低,查询用时40秒了,不知道怎么会事情?
可以写触发器或者添加update语句实现,这样就不会在取数据的时候每次进行统计