Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/11/2009, 05:14
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 1 mes
Puntos: 2658
Respuesta: union de tablas

Si la primera contiene los datos de la persona y la segunda los datos de la dirección de la persona, esto:
Código sql:
Ver original
  1. SELECT `nombre` , `apellido`
  2. FROM tabla 1
  3. CROSS JOIN tabla 2 ON tabla 2.ide_persona = tabla 1.ide_persona
no tiene sentido. En todo caso el ID de la primera tabla debe relacionarse con tabla2.ide_persona.
Aún así, tendría sentido si y sólo si una persona tiene más de un domicilio.

Fuera de eso, no hay ninguna limitación en cuanto a cruzar datos entre campos no clave. Lo que hay que ver es la lógica de la consulta, es decir qué es lo que se quiere obtener, y asegurarse de no perder consistencia de información.
Un entrecruzamiento entre tablas a traves de , por ejemplo, el código postal, puede parecer lógico, pero emparejará todos los registros que posean en ambas tablas el mismo, generando un producto cartesiano.
Esas consultas deben tener uno o varios parámetros adicionales que permitan discriminar la correspondencia, o bien los campos deberán tener una relación 1:1, en cuyo caso es probable que sean de todos modos claves primarias o foráneas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)