다음 Microsoft SQL Server 2008 명령을 작성하는 좀 더 우아한 방법이 있습니까?다른 테이블의 값을 기반으로 업데이트 필드
UPDATE TableB
SET TableBField2=0
WHERE TableBID IN(
SELECT TableBID
FROM TableB
JOIN TableA on TableB.TableAID=TableA.TableAID
WHERE TableBField2 < 0
AND TableAField1 = 0
)
일반적으로 말하면, 내가하고있는 일은 조인 된 테이블의 필드 값을 기반으로 테이블을 업데이트하는 것입니다. IN()의 사용이 비효율적이라고 생각하는지 궁금합니다.
뭔가를 시도 할 수 있습니다? 이제 TableA 또는 TableB를 누를 때마다이 업데이트를 실행해야합니다. 계산 된 결과가 변경되어 TableBField2가 유효 기간을 초과 할 수 있기 때문입니다. –