Ver Mensaje Individual
  #11 (permalink)  
Antiguo 09/08/2004, 05:53
Atzeneta
 
Fecha de Ingreso: junio-2004
Ubicación: Castellón, España
Mensajes: 98
Antigüedad: 20 años, 5 meses
Puntos: 0
Estoy totalmente de acuerdo con Vice, lo que le sucede a cucox es totalmente ilógico. Para poder ayudarle sería necesario conocer la estructura de las tablas y los registros que hay en ellas.

De todas formas, en mi opinión, deberías tener un tabla de tipos de vehículo con una clave única para cada registro. Después deberías estudiar el tipo de relación JOIN, INNER JOIN..., teniendo en cuenta lo siguiente:

INNER JOIN: Especifica que se devuelven todos los pares de filas coincidentes. Descarta las filas no coincidentes de las dos tablas. Éste es el valor predeterminado si no se especifica ningún tipo de combinación.
LEFT: Especifica que todas las filas de la tabla izquierda que no cumplan la condición de combinación se incluyan en el conjunto de resultados, con las columnas de la otra tabla establecidas en NULL, además de todas las filas devueltas por la combinación interna.
RIGHT: Especifica que todas las filas de la tabla derecha que no cumplan la condición de combinación se incluyan en el conjunto de resultados, con las columnas de la otra tabla establecidas en NULL, además de todas las filas devueltas por la combinación interna.
CROSS JOIN: Especifica el producto resultante de dos tablas.

La consulta podría quedar algo así:

Código:
...FROM productos_propio INNER JOIN tabla_vehiculos ON 
productos_propio.clave_unica = tabla_vehiculos.clave_unica INNER JOIN 
productos_consignado ON tabla_vehiculos.clave_unica = 
productos_consignado.clave_unica WHERE tabla_vehiculos.tipo_vehiculo 
= 'Automovil'
Haciéndolo de esta forma es imposible que te duplique ningún registro.