집 >데이터 베이스 >MySQL 튜토리얼 >SQL Server에서 INNER JOIN을 사용하여 행을 올바르게 삭제하는 방법은 무엇입니까?
INNER JOIN을 사용하여 SQL Server에서 행을 삭제하는 올바른 방법
SQL Server에서 INNER JOIN을 사용하여 행을 삭제할 때 작업 실패를 유발할 수 있는 일반적인 실수를 피하십시오. 그러한 실수 중 하나는 삭제할 테이블의 명시적인 지정을 생략하는 것입니다.
오류 발생:
다음 코드를 실행할 때 다음 오류 메시지가 나타납니다.
<code class="language-sql">DELETE FROM WorkRecord2 INNER JOIN Employee ON EmployeeRun=EmployeeNo WHERE Company = '1' AND Date = '2013-05-06'</code>
오류 메시지는 다음과 같습니다.
메시지 156, 레벨 15, 상태 1, 라인 15
키워드 'INNER' 근처에 구문 오류가 있습니다.
해결책:
이 오류를 수정하려면 DELETE 작업으로 수정될 테이블을 명시적으로 식별해야 합니다. 이는 테이블에 별칭을 도입하여 달성할 수 있습니다. 수정된 코드는 다음과 같습니다.
<code class="language-sql">DELETE w FROM WorkRecord2 w INNER JOIN Employee e ON EmployeeRun=EmployeeNo WHERE Company = '1' AND Date = '2013-05-06'</code>
이 업데이트된 코드에서는 "w"가 WorkRecord2 테이블의 별칭으로 사용됩니다. 이렇게 하면 DELETE 문이 올바른 테이블을 대상으로 행을 삭제할 수 있습니다.
위 내용은 SQL Server에서 INNER JOIN을 사용하여 행을 올바르게 삭제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!