이 쿼리가 작동하지 않습니다. 나는 'prospectousuario'테이블에 합류 할 때 아무런 일치가 없다면 "sin asignar"라고 말해야하는 "Executive"라는 필드를 보여주고 싶습니다. 존재한다면 사장의 성명을 말해야합니다.하위 쿼리가 1 개 이상의 값을 반환하여 쿼리가 실패했습니다.
select p.IDCANCAP,
p.CEDULA,
p.NOMBRES,
p.APELLIDOS,
p.CELULAR,
p.CASA,
p.CORREO,
p.ESTABLECIMIENTO,
c.DESCRIPCION,
(select case when
p.CEDULA = pu.IDPROSPECTO and pu.IDUSUARIO = u.CEDULA
then u.NOMBRES+' '+u.APELLIDOS else 'Sin asignar'
end from usuario as u, PROSPECTOUSUARIO as pu) as Ejecutivo,
p.FECHA_CREAC
from PROSPECTO p, CANALCAPTACION c
where p.IDCANCAP = c.IDCANAL
오류 메시지는 ** 문제 **가 무엇인지 정확히 알려주고 명세서에 하나의 하위 쿼리 만 있습니다. * 하위 쿼리가 둘 이상의 행을 반환하는 부분 *이 분명하지 않습니까? –
하위 쿼리가 두 개 이상의 레코드를 반환 할 수 있습니다. 단일 레코드 만 반환하도록 하위 쿼리를 제한하는 방법에 대해 생각할 수 있습니까? –
@TimBiegeleisen 테이블 'prospectos'의 모든 기록과 할당 된 임원의 이름을 말해야하는 추가 필드를 반환해야합니다. – Jorge