programing

Update 문에서 테이블 별칭을 사용하는 좋은 방법입니까?

stoneblock 2023. 4. 9. 21:02

Update 문에서 테이블 별칭을 사용하는 좋은 방법입니까?

SQL Server를 사용하여 동일한 테이블 내에서 행을 업데이트하려고 합니다.가독성을 위해 테이블 별칭을 사용하고 싶습니다.현재는 이렇게 하고 있습니다.

UPDATE ra 
SET ra.ItemValue = rb.ItemValue
FROM dbo.Rates ra, dbo.Rates rb
WHERE ra.ResourceID = rb.ResourceID
AND ra.PriceSched = 't8'
AND rb.PriceSched = 't9'

더 쉬운/더 나은 방법이 있습니까?

UPDATE ra 
   SET ra.ItemValue = rb.ItemValue
  FROM dbo.Rates ra
 INNER JOIN dbo.Rates rb
         ON ra.ResourceID = rb.ResourceID
WHERE ra.PriceSched = 't8'
  AND rb.PriceSched = 't9';

이렇게 하면 성능 향상에 도움이 될 수 있습니다.

T-SQL(Microsoft SQL)의 업데이트 쿼리에 있는 테이블 에일리어스.MS SQL Server 2008 R2에서는 정상적으로 동작합니다.

UPDATE A_GeneralLedger  set ScheduleId=g.ScheduleId
from A_GeneralLedger l inner join A_AcGroup g on g.ACGroupID=l.AccountGroupID

다음 코드를 사용합니다.

UPDATE ra 
SET ra.ItemValue = rb.ItemValue
FROM dbo.Rates ra, dbo.Rates rb
WHERE ra.ResourceID = rb.ResourceID
AND ra.PriceSched = 't8'
AND rb.PriceSched = 't9'

언급URL : https://stackoverflow.com/questions/31551/good-way-to-use-table-alias-in-update-statement