Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/01/2015, 10:40
felipe12357
 
Fecha de Ingreso: junio-2010
Mensajes: 168
Antigüedad: 13 años, 10 meses
Puntos: 3
Subconsulta en un select

Hola a todos, estoy teniendo un problema con una subconsulta me explico:

existen varias tablas:

entidades, cotizaciones y convenios.

la subconsulta la utilizo para saber que entidades no tienen, ni convenios,ni cotizaciones así:

Código SQL:
Ver original
  1. SELECT nit
  2.  FROM entidades
  3.  WHERE nit NOT IN (SELECT DISTINCT nit FROM cotizaciones)
  4.             AND nit NOT IN (SELECT DISTINCT nit FROM convenios)
  5. AND nit!='' AND nit!=0

hasta allí muy bien ya q trae estos nits, ahora mi problema es que necesito saber si esta entidad ha sido procesada o no ( si el nit de dicha entidad, está en la subconsulta o no) y adjuntarle el resto de datos de la entidad.

Para ellos si el nit aparece el campo procesado deberá tener un 1, de lo contrario un 0.

para ello intento lo siguiente:

Código SQL:
Ver original
  1. SELECT nombre, represetante,(
  2. SELECT nit
  3.  FROM entidades
  4.  WHERE nit NOT IN (SELECT DISTINCT nit FROM cotizaciones)
  5.             AND nit NOT IN (SELECT DISTINCT nit FROM convenios)
  6. AND nit!='' AND nit!=0
  7. ) AS procesado
  8. FROM entidades

Sí lo hago así me saca un error:
Subquery returns more than 1 row

por ello agregue un count:
Código SQL:
Ver original
  1. SELECT nit,(
  2. SELECT COUNT(0)
  3.  FROM bdrcmr_entidades
  4.  WHERE nit NOT IN (SELECT DISTINCT nit FROM bdrcmr_cotizaciones)
  5.             AND nit NOT IN (SELECT DISTINCT nit FROM grt_ingreso_convenios)
  6. AND nit!='' AND nit!=0) AS prospecto
  7. FROM bdrcmr_entidades


Pero como era de esperarse ahora todas las empresas tienen el resultado de dicho contador.

Alguna idea sobre como puedo solucionar mi inconveniente??

espero me puedan ayudar, muchas gracias!

Última edición por gnzsoloyo; 05/01/2015 a las 11:10 Razón: Mal etiquetado