Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/09/2004, 13:48
Avatar de José Molina
José Molina
 
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 23 años, 2 meses
Puntos: 1
Consulta de 2 tablas (SubSelect)

Saludos

Tengo estas 2 tablas:

TABLA Vehiculo:

- id_vehiculo
- tipo
- status


TABLA Conductor:

- id_conductor
- nombre
- unidad (aquí se guarda el id_vehiculo de Vehiculo)


Ahora lo que quiero es que me muestre un listado de los id_vehiculo que estan sin asignar al conductor.

Estaba haciendo esto:

select a.id_vehiculo from vehiculo as a, conductor as b where a.id_vehiculo != b.unidad

Pero ese query me trae un listado enorme. Por qué??

entiendo que porque se pregunta:

id_vehiculo Tabla Vehiculo = 1,2,3,4,9

unidad Tabla Conductor = 1,2,9

Es igual a.1 y b.1 SI
Es igual a.1 y b.2 NO
Es igual a.1 y b.9 NO
Es igual a.2 y b.1 NO
Es igual a.2 y b.s SI

Y asi sucesivamente, entonces el resultado que me trae son valores incorrectos. Cómo se que son incorrectos porque lo que me trae es esto:

1,2,3,4,9
1,2,3,4,9

y asi lo repite 5 veces

Me imagine entonces que buscando primero los que si son iguales, me traería esto:

select a.id_vehiculo from vehiculo as a, conductor as b where a.id_vehiculo = b.unidad

Y efectivamente me trae: 1,2,9

Ahora la idea es hacer otra consulta que pregunte, traeme todos los id_vehiculo que sean distintos a (1,2,9)

Pero no se como escribir eso

Solo necesito el QUERY, no como armar el listado ni nada de eso. Simplemente cual sería la consulta sql??

NOTA: Todos los query los estoy probando en el MySql front. No es el código duro del site

Gracias
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.

Última edición por José Molina; 27/09/2004 a las 06:18