日期:2014-05-18  浏览次数:20407 次

一个奇怪的更新问题
SQL code

SELECT '0001' ID ,100 FSUM INTO #TB
SELECT '0001' ID ,100 FM1,O FM2 INTO #T
UNION ALL 
SELECT '0001' ID ,0 FM1,100 FM2

SELECT A.ID,A.FSUM,B.FM1,B.FM2 FROM #TB A,#T B WHERE A.ID=B.ID

UPDATE #TB SET FSUM=A.FSUM+B.FM1-B.FM2 FROM  #TB A,#T B WHERE A.ID=B.ID



上述代码 更新只更新了#T 的第一条 而第二条却更新不到 
求解

------解决方案--------------------
探讨
SQL code

SELECT '0001' ID ,100 FSUM INTO #TB
SELECT '0001' ID ,100 FM1,O FM2 INTO #T
UNION ALL
SELECT '0001' ID ,0 FM1,100 FM2

SELECT A.ID,A.FSUM,B.FM1,B.FM2 FROM #TB A,#T B WHERE A.ID=B.ID

UPDAT……

------解决方案--------------------
探讨

引用:
引用:
SQL code


你的表明都写错了吧???你那哪是更新#T,明明是更新的#TB表

没错 更新只把#t的第一条记录更新到#tb表