Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] Subconsulta en un select

Estas en el tema de Subconsulta en un select en el foro de Mysql en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 05/01/2015, 10:40
 
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
  #2 (permalink)  
Antiguo 05/01/2015, 16:12
 
Fecha de Ingreso: junio-2010
Mensajes: 168
Antigüedad: 13 años, 10 meses
Puntos: 3
Respuesta: Subconsulta en un select

Hola ya he solucionado el problema depronto le sirve a alguien la solucion fue realizar la subconsulta en el from y de esta realizar un join con la tabla entidades asi:
Código MySQL:
Ver original
  1. SELECT DISTINCT e.nit,f3.total, e.entidad
  2.  FROM entidades as e
  3.          SELECT DISTINCT
  4.                             nit,
  5.                             razon_social,1 as total
  6.                     FROM
  7.                             convenios
  8. ) as f3
  9. on e.nit=f3.nit
[/PHP]

ahora mi problema es q lo necesito como una vista y al momento de guardar me arroja el sigueinte error:



view's select contains a subquery in the from clause

cualquier ayuda o sujerencia me será de gran ayuda, gracias

Última edición por gnzsoloyo; 05/01/2015 a las 16:30 Razón: Pesimo etiquetado. Por favor usar los Highlights correctos

Etiquetas: campo, select, subconsulta, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:39.