Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Problema con consulta

Estas en el tema de Problema con consulta en el foro de Bases de Datos General en Foros del Web. Buenos dias, tengo una tabla personas con informacion personal y muchos id que pertenecen a otras tablas para relacionarlas de manera correcta, pero nose como ...
  #1 (permalink)  
Antiguo 27/05/2011, 01:49
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 12 años, 3 meses
Puntos: 0
Problema con consulta

Buenos dias, tengo una tabla personas con informacion personal y muchos id que pertenecen a otras tablas para relacionarlas de manera correcta, pero nose como realizar la union, como lo puedo hacer?
mi tabla es personas y tiene los sigueintes datos:
  • id_persona
  • nombre
  • apellido1
  • apellido2
  • dni
  • letra
  • id_nacionalidad
  • id_municipio
  • codprov
  • id_profesion
  • id_laboral
  • id_entidad

En este momento estoy cogiendo cada consutla por separado pero me gustaria hacerlo de manera global, relacionando en una misma consutla todo, he leido que con el inner join se puede hacer pero no se de que manera.
Lo que me interesa es coger ese id y coger el nombre en la tabla para mostrar los datos personales de una persona.

Gracias, un saludo.
  #2 (permalink)  
Antiguo 27/05/2011, 01:53
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 8 años, 10 meses
Puntos: 89
Respuesta: Problema con consulta

¿Que has intentado? Con un INNER JOIN (o varios) es muy facil, pero tienes que intentarlo tu y plantearnos tus dudas, no pedir que te hagamos tus tareas
  #3 (permalink)  
Antiguo 27/05/2011, 02:34
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Primero lo he echo individual para ver si consigo hacerlo con un simple inner join, por ejemplo con la tabla personas y muunicipios( donde municipiso contiene:
  • id_municipio
  • codprov
  • cp
  • municipio

Código:
$consultalocalidad="SELECT * from municipios INNER JOIN personas ON municipios.id_municipio=personas.id_municipio"
$resultadoloc=mysql_query($consultalocalidad);
[email protected]_num_rows($resultadoloc);
if($filasloc !=0){
      $rowl=mysql_fetch_array($resultadoloc);
      $_SESSION['id_municipio']=$rowl[0];
      $_SESSION['municipio']=$rowl[3];
      $_SESSION['codprov']=$rowl[1];

      <? echo $row[3] ?>

}
Y no me muestra bien los datos, porque puede ser debido?
Deberia poder hacerlo relacionando 3 tablas pero si no me sale esto...
  #4 (permalink)  
Antiguo 27/05/2011, 02:44
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 8 años, 10 meses
Puntos: 89
Respuesta: Problema con consulta

¿Por qué no te muestra bien los municipios? Deberías poner primero la tabla personas, ya que quieres los datos del municipio de una persona, no las personas de un municipio.

Lanza la query en tu base de datos y dime por qué no te muestra bien.
  #5 (permalink)  
Antiguo 27/05/2011, 02:46
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Puede ser que tenga que poner tambien que me coincida con el id persona que estoy cogiendo para los datos y por esa razon me lo este mostrando mal?
  #6 (permalink)  
Antiguo 27/05/2011, 02:50
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Ya me muestra esto, gracias! la cosa estaba en poner antes las personas efectivamente! GRacias, ahora dentro de esa tabla tengo las provincias que tambien las relaciono desde ese punto, como hago para coger los datos a la vez en esa consulta?

GRACIAS!!!
  #7 (permalink)  
Antiguo 27/05/2011, 03:03
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 8 años, 10 meses
Puntos: 89
Respuesta: Problema con consulta

Con otro INNER JOIN

Etiquetas: id_persona, innerjoin, personas, select, tabla, bases-de-datos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:36.