512: Subquery returned more than 1 value
SQL Server의미
단일 값을 기대하는 컨텍스트(=, <, >, 비교 또는 할당)에서 사용된 서브쿼리가 둘 이상의 행을 반환했다. SQL Server는 단일 스칼라 값을 기대했지만 여러 값을 만났다.
원인
비교에서 단일 값을 반환한다고 가정한 서브쿼리가 여러 행을 반환, 고유하지 않은 매칭 조건, 누락된 필터, 또는 잘못 구성된 상관 쿼리.
해결 방법
서브쿼리를 단일 행으로 줄인다(예: TOP 1, MAX/MIN 또는 적절한 GROUP BY). 여러 값이 예상된다면 = 대신 IN 또는 EXISTS를 사용한다. JOIN으로 다시 작성한다. 서브쿼리가 왜 여러 행을 반환하는지 조사해 필터/키 조건을 수정한다.
같은 데이터베이스의 다른 항목
- 245Conversion failed when converting the value to data type
- 515Cannot insert the value NULL into column
- 8115Arithmetic overflow error converting expression to data type
- 207Invalid column name
- 156Incorrect syntax near the keyword
- 2812Could not find stored procedure (저장 프로시저를 찾을 수 없음)
- 8623The query processor ran out of internal resources and could not produce a query plan (쿼리 프로세서 내부 리소스 부족으로 쿼리 계획 생성 불가)