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

Mostrar información de dos tablas.

Estas en el tema de Mostrar información de dos tablas. en el foro de Bases de Datos General en Foros del Web. Hola a todos. Ando un poco espeso en bases de datos MySQL (bueno en general con todas jaja) para consultas sencillas me defiendo pero está ...
  #1 (permalink)  
Antiguo 24/05/2009, 05:31
 
Fecha de Ingreso: abril-2009
Ubicación: Barcelona
Mensajes: 113
Antigüedad: 15 años
Puntos: 9
Pregunta Mostrar información de dos tablas.

Hola a todos.

Ando un poco espeso en bases de datos MySQL (bueno en general con todas jaja) para consultas sencillas me defiendo pero está es algo complicada para mi, seguro que para todos vosotros será también muy sencilla jaja.

Tengo dos tablas un llamada usuarios y otra llamada trabajos.

En la de usuarios guardo los datos típicos entre los que se encuentran el id y el nombre. En la de trabajos tengo un campo con el id del usuario.

Mi idea es mostrar el titulo del trabajo y la explicación del mismo y al lado el nombre del autor.

Intentaré hacerlo gráficamente para explicarme mejor.

tabla usuario : idusuario, nombre
tabla trabajos: idtrabajo, titulo, explicacion, idusuario

y quiero obtener idtrabajo | titulo | explicacion |nombre

he logrado hacer la siguiente consulta

select idtrabajo, titulo, explicacion, nombre from trabajos, usuarios where titulo = "hola";

El problema es que cuando realizo la consulta me salen varios trabajos con el nombre hola y pertenecientes a diferentes usuarios.

Por ejemplo tengo autor1, autor 2 y autor3. Autor1 y autor2 es cierto que tienen ambos un trabajo llamado hola con lo que sería normal que salieran pero lo que no es normal es que me lo muestre también en autor3 y encima me repite el proceso varias veces mostrándome los mismo datos...

¿Que estoy haciendo mal?

Espero haberme explicado correctamente y que podáis ayudarme.

Venga vaya bien.
  #2 (permalink)  
Antiguo 24/05/2009, 07:45
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 3 meses
Puntos: 360
Respuesta: Mostrar información de dos tablas.

Prueba esta navengantes

Código sql:
Ver original
  1. SELECT t.idtrabajo, t.titulo, t.explicacion, u.nombre
  2. FROM trabajos t INNER JOIN usuarios u
  3. ON t.idusuario = u.idusuario
  4. WHERE titulo = "hola";

La letra t y u son alias que se les pone a las tablas para manejar mas facilmente los datos.

Nos cuentas como te va.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 24/05/2009, 08:00
 
Fecha de Ingreso: abril-2009
Ubicación: Barcelona
Mensajes: 113
Antigüedad: 15 años
Puntos: 9
Respuesta: Mostrar información de dos tablas.

Hola.

Muchas Gracias Huesos 52, me funciona perfectamente.

espero ser capaz algún día de lograr hacer una consulta decente y honrada a la primera :D

Nos vemos.
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 23:31.