我有闲置的更新声明:
update tmp set
tmp.Anzahl=(select sum(a.BNANZ) from PAYMASTER_Journal a where a.BNARTID=tmp.ArtikelAutoID),
tmp.Betrag=(select sum(a.BNBETR) from PAYMASTER_Journal a where a.BNARTID=tmp.ArtikelAutoID),
tmp.Rabatt=(select sum(a.BNRMRBETR) from PAYMASTER_Journal a where a.BNARTID=tmp.ArtikelAutoID)
from ##tmp1 tmp
这样,对于##tmp1 中的每条记录,都会执行3 个子查询。##tmp1 包含 10'000 条记录 -> 总共 30'000 个子查询。
因为每个子查询都从 PAYMASTER_Journal 中选择相同的记录,所以我正在寻找一种方法来更新 ##tmp1,同时在 ##tmp1 中的每条记录只执行一个子查询。
我希望,有人可以帮助我解决这个问题。