[개발] 프로그램 지식

[sql] 단일 행 하위 질의에 2개 이상의 행을 리턴 오류 with 서브쿼리 alias 알리야스

  • -
반응형

1. 위에 쿼리처럼 Alias를 제대로 지정해주지 않으면 에단일 행 하위 질의 2개 이상의 행 리턴 오류가 발생할 수 있

 

첫 번째 쿼리에서는 하위 질의의 서브쿼리(Subquery)에서 외부 쿼리의 테이블과 열을 참조할 때, 테이블 및 열에 별칭(Alias)을 사용하지 않고 직접 원래의 이름을 사용하였습니다.

이 경우, 하위 쿼리에서의 테이블과 열은 부모 쿼리의 테이블과 열과 충돌하여 정상적인 실행이 어렵게 됩니다. 반면, 두 번째 쿼리에서는 별칭(Alias)을 사용하여 외부 쿼리와 서브쿼리 간의 구분을 명확히 하였습니다.

별칭을 사용하여 서브쿼리에서 외부 쿼리의 테이블과 열을 참조하면 충돌 없이 정상적으로 실행됩니다. ​ 따라서 첫 번째 쿼리에서 오류가 발생한 이유는 별칭(Alias)을 사용하지 않아 테이블과 열 이름의 충돌이 발생했기 때문입니다.

두 번째 쿼리에서는 별칭을 사용하여 충돌을 피하였기 때문에 오류가 발생하지 않습니다. ​ 정확한 이유를 파악하려면 데이터베이스 관련 오류 메시지를 살펴보는 것이 도움이 될 수 있습니다. 오류 메시지에는 충돌하는 테이블 또는 열의 이름이 명시되어 있을 것입니다.

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.