Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/02/2010, 07:59
jordi45
 
Fecha de Ingreso: octubre-2008
Mensajes: 168
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: Column 'nombre' in where clause is ambiguous en consulta inversa

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Código MySQL:
Ver original
  1. FROM coches C INNER JOIN marcas M ON C.nombre = M.nombre;

El error sale en el último punto: Ese campo no está determinado de dónde sale, es decir, a qué tabla pertenece. Si la idea era usar una variable para poner ese dato, entonces el código en general estaba incompleto o mal redactado.
Por otro lado, cuando tienes una relación de datos como la que estás poniendo (al vincular dos tablas sobre un campo), eso no se hace en el WHERE sino por JOINs. Es cierto que ponerlo en el WHERE funciona, pero el problema es la falta de optimización de la consulta, ya que el WHERE no es optimizable por el MySQL y el FROM... JOIN si.

OK, funciona, he mirado lo del INNER JOIN y si se hace con el WHERE se denomina INNER JOIN implícito.

Gracias