Autor Tema: Select de tablas relacionadas 1 a muchos ejemplo INNER JOIN sacar varios datos  (Leído 4061 veces)

gatoher

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 86
    • Ver Perfil
Hola a todos, la verdad que me he quedado parado con una select que quiero hacer y me he quedado.

La simplifico, a ver:

Hay 3 tablas como veis Post digamos es la central y tiene una relación de 1 => muchos con usuario y tiempo_cambio. Yo quiero en una select por ejemplo recuperar el nick del usuario y el tiempo de cambio de la tabla tiempo de cambio.

Por ejemplo esta select recupera el nick de la tabla usuario, Como comento es un ejemplo simplificado:

select nick from usuario as usu, post as p where p.idUsuario = usu.idUsuario and p.idUsuario = 12

¿Yo podría en una misma select sacar tiempo de la tabla tiempo_cambio y el nick del usuario?

Esquema de las tablas:

Tabla usuario: idUsuario (INT), nick (VARCHAR 25), password (CHAR 12), email (VARCHAR 45), fecha (DATE), admin (TINYINT 1)

Tabla post: idPost (INT) idUsuario (INT), secciones_idsecciones (TINYINT 20), tiempo_cambio_idTiempoCambio (INT), titulo (VARCHAR 60), comentario (VARCHAR 255), precio (VARCHAR 10), fechaPost (DATE)

Tabla tiempo_cambio: idTiempoCambio (INT), tiempo (VARCHAR 25)


« Última modificación: 09 de Octubre 2016, 22:08 por Ogramar »

DRANXZ88

  • Avanzado
  • ****
  • Mensajes: 356
    • Ver Perfil
Re:Select de tablas relacionadas de 1 a muchos
« Respuesta #1 en: 06 de Octubre 2016, 20:34 »
Podes usar inner join para unir las tabla un ejemplo seria algo así.
Código: [Seleccionar]
select * from post p
    inner join usuario u on p.idUsuario=u.idUsuario
    inner join tiempo_cambio t on p.idTiempoCambio=t.idTiempoCambio
    where p.idPost= 12
Con where también se puede unir pero sera muy largo nomas la condición.

gatoher

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 86
    • Ver Perfil
Re:Select de tablas relacionadas de 1 a muchos
« Respuesta #2 en: 06 de Octubre 2016, 22:10 »
Hola DRANXZ88, si ya lo había hecho. Me había quedad to loco sabes  ;D. Gracias de todas formas  ;)

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".