2010-01-07 3 views
0

다음과 같은 간단한 SQL Server 2005 업데이트 문을 작성하는 더 좋은 방법이 있습니까? 이것은 좀 비효율적 인 것 같습니다.다른 테이블의 필드 업데이트

UPDATE QuotationItem 
SET  Recurring_Cost = 
      (SELECT TOP (1) Recurring_Cost 
      FROM   Products 
      WHERE  (Remote_ID = QuotationItem.Product_ID)) 
WHERE  (Quotation_ID = 115) 

덕분에,

답변

0

TOP 1 정말 필요한가요? 그렇다면 주문을 지정하지 않으므로 어쨌든 검색어에서 임의의 결과가 발생합니다! 정말 필요하지 않은 경우,이 수행합니다

UPDATE q 
SET  Recurring_Cost = p.RecurringCost 
FROM QuotationItem q 
     INNER JOIN 
       Products p 
       ON p.Remote_ID = q.Product_ID 
WHERE q.Quotation_ID = 115 
2

을 어떻게이

UPDATE QuotationItem 
SET Recurring_Cost = p.recurring_cost 
FROM QuotationItem q join Products p on q.Product_ID = p.Remote_ID 
WHERE q.Quotation_ID = 115 
가입 사용 정보
관련 문제