Ver Mensaje Individual
  #5 (permalink)  
Antiguo 19/07/2012, 14:34
Avatar de Killerx_8937
Killerx_8937
 
Fecha de Ingreso: noviembre-2006
Mensajes: 99
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Consulta en dos tablas

Muchas Gracias Lo resolvi asi gracias a su ayuda

para el control numero solo 1 solo 2 y solo 3
solo cambio IN (1) por el control respectivo

Código MySQL:
Ver original
  1. SELECT A.Equipos_Codigo,A.Equipos_Tipo,A.Equipos_Marca,A.Equipos_Rango,A.Equipos_Resolucion,A.Equipos_Area, COUNT( DISTINCT B.Ctrl_Tipo ) num FROM Equip_Equipos AS A INNER JOIN Equip_Ctrl AS B ON A.Equipos_Codigo = B.Ctrl_Codigo WHERE B.Ctrl_Tipo IN (1) GROUP BY A.Equipos_Codigo HAVING num >0

para la combinacion de 2 controles asi:

IN (2,3) ó IN (1,3)

Código MySQL:
Ver original
  1. SELECT A.Equipos_Codigo,A.Equipos_Tipo,A.Equipos_Marca,A.Equipos_Rango,A.Equipos_Resolucion,A.Equipos_Area, COUNT( DISTINCT B.Ctrl_Tipo ) num FROM Equip_Equipos AS A INNER JOIN Equip_Ctrl AS B ON A.Equipos_Codigo = B.Ctrl_Codigo WHERE B.Ctrl_Tipo IN (1,2) GROUP BY A.Equipos_Codigo HAVING num >1

y para los tres controles como ya me habeis indicado:

Código MySQL:
Ver original
  1. SELECT A.Equipos_Codigo,A.Equipos_Tipo,A.Equipos_Marca,A.Equipos_Rango,A.Equipos_Resolucion,A.Equipos_Area, COUNT( DISTINCT B.Ctrl_Tipo ) num FROM Equip_Equipos AS A INNER JOIN Equip_Ctrl AS B ON A.Equipos_Codigo = B.Ctrl_Codigo WHERE B.Ctrl_Tipo IN (1,2,3) GROUP BY A.Equipos_Codigo HAVING num >2

Ahora no se si fue lo mejor diseñar asi las tablas de la base de datos

El tema de fondo es que no todos los equipos tienen los tres tipos controles, por eso decidí separar en 2 tablas para no dejar campos en blanco en la tabla Equip_Equipos por eso cree una tabala Equip_Ctrl donde se guardan los controles efectivos para cada equipo, pero se me a complicado a la hora de las consultas, jajajaj