--- 修改前: update BM_YYSFTJ A set SFXM99= ( select count(*) from SF_BRXXB0 B,BM_BRXXB0 C,IC_YBBRLB D where B.BRID00 = C.BRID00 and C.FBBH00 = D.FBBH00 and C.YBLB00 = D.YBLB00 and B.GHKS00 = A.BMBH00 and (d.YBMC00 = as_YBMC00 or as_YBMC00 ='所有病人') and B.GHRQ00 >= as_KSRQ00 and B.GHRQ00 <= as_JSRQ00 and THBZ00 <> '0' and (as_MZZYBZ='0' or as_MZZYBZ='1') ) where ID0000 = ad_ID0000 ; --------------修改后----------- update BM_YYSFTJ A set SFXM99= ( select count(*) from SF_BRXXB0 B,BM_BRXXB0 C,IC_YBBRLB D where B.BRID00 = C.BRID00 and C.FBBH00 = D.FBBH00 and C.YBLB00 = D.YBLB00 and B.GHKS00 = A.BMBH00 and (d.YBMC00 = as_YBMC00 or as_YBMC00 ='所有病人') and B.GHRQ00 >= as_KSRQ00 and B.GHRQ00 <= as_JSRQ00 and THBZ00 <> '0' and (as_MZZYBZ='0' or as_MZZYBZ='1') and (a.yszid0=C.FBBH00) ) where ID0000 = ad_ID0000 and exists(select 1 from SF_BRXXB0 B,BM_BRXXB0 C,IC_YBBRLB D where B.BRID00 = C.BRID00 and C.FBBH00 = D.FBBH00 and C.YBLB00 = D.YBLB00 and B.GHKS00 = A.BMBH00 and (d.YBMC00 = as_YBMC00 or as_YBMC00 ='所有病人') and B.GHRQ00 >= as_KSRQ00 and B.GHRQ00 <= as_JSRQ00 and THBZ00 <> '0' and (as_MZZYBZ='0' or as_MZZYBZ='1') and (a.yszid0=C.FBBH00));