update outm_1101 set tmamoney1=(tmamoney1*2), tmoneymg=(tmoneymg*2), inmoney1=(inmoney1*2) from (select top 20 * from outm_1101) where day1='2011-01-01'
20개를 select 해서 조건을 준 필드값들만 바꾸려고 하는데 빠진것들이 있는지요...
update outm_1101 set
tmamoney1=(tmamoney1*2),
tmoneymg=(tmoneymg*2),
inmoney1=(inmoney1*2)
from outm_1101
where day1='2011-01-01'
위 처럼 하면 먹혀들지만 물로 조인을 줘도 됩니다. 조인시 순서는 상관없구요.
즉, 다시 말해 해당 테이블이 괄호로 묶이지 않아야 합니다.
괄호로 묶으면 다른 테이블(뷰)이 되어버리죠.
update outm_1101
set tmamoney1=(tmamoney1*2),
from (select top 20 * from outm_1101) a
and outm_1101.key=a.key
이렇게 하던가..
from outm_1101 a
join (select top 20 * from outm_1101) b on a.key=b.key
요렇게 해야함.