Ver Mensaje Individual
  #4 (permalink)  
Antiguo 04/12/2009, 05:11
Lebennin
 
Fecha de Ingreso: septiembre-2005
Mensajes: 135
Antigüedad: 18 años, 7 meses
Puntos: 1
Respuesta: Consulata con INNER JOIN

Te intenraré responder yo, espero ayudarte. La expresión correcta es la que te ha comentado iislas y a continuación intento explicarte esa sentencia.

SELECT * FROM registros, referencias WHERE registros.numeroID = referencias.numeroID LIKE '%$search%' ORDER BY registrado");

Tu consulta debería quedar algo parecido a esto.

SELECT *
FROM registros reg INNER JOIN referencias ref
ON reg.numeroID = ref.numeroID
WHERE ....


Es decir, para relacionar tus dos tablas es necesario indicarle mediante que campos se va a relacionar, y debido a que los campos se llaman igual se utilizan alias en las tablas (reg y ref) que se ponen a continuación del nombre de la tabla en la clausula FROM.

Para relacionarlas utilizamos la clausula INNER JOIN, de modo que queda tabla1 INNER JOIN tabla 2 y evidentemente tenemos que decirle mediante que campo se relacionan, eso con la clausula ON y a continuación igualando los campos de relación.

Posteriormente, una vez realizadas estas clausulas pondremos todas las clausulas WHERE que decidamos.

Si no me explico muy bien, dimelo e intento ayudarte.

Salu2.