SQL Server 2005에서 CASE 문을 사용하여 선택적 레코드 업데이트
주어진 SQL 문은 CASE 문을 사용하여 LASTNAME을 기반으로 특정 레코드를 업데이트합니다. 가치. 그러나 모든 행을 포괄하는 ELSE 조건으로 인해 불필요한 처리가 발생한다는 우려가 있습니다. 이를 해결하기 위해 최적화된 솔루션이 제안됩니다.
불필요한 검색을 최소화하려면 다음과 같이 WHERE 절을 문에 포함할 수 있습니다.
UPDATE dbo.TestStudents SET LASTNAME = CASE WHEN LASTNAME = 'AAA' THEN 'BBB' WHEN LASTNAME = 'CCC' THEN 'DDD' WHEN LASTNAME = 'EEE' THEN 'FFF' ELSE LASTNAME END WHERE LASTNAME IN ('AAA', 'CCC', 'EEE');
이 수정된 코드에서 WHERE 절은 절은 업데이트 작업을 관심 있는 LASTNAME 값('AAA', 'CCC' 및 'EEE')으로만 제한합니다. 이렇게 하면 의도한 업데이트가 효율적으로 수행되는 동안 영향을 받지 않은 행이 변경되지 않은 상태로 유지됩니다.
위 내용은 CASE 문과 WHERE 절을 사용하여 SQL Server 업데이트를 최적화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!