elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Consulta sql, 1 key a varios registros
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Consulta sql, 1 key a varios registros  (Leído 3,674 veces)
mark182


Desconectado Desconectado

Mensajes: 395


Ver Perfil WWW
Consulta sql, 1 key a varios registros
« en: 24 Mayo 2011, 21:42 pm »

Buenas, como esta?

Estoy haciendo un sistema de post en los que se pueden dejar varios comentarios, y mi problema es que no se que consultar hacer para el siguiente caso:

Yo tengo dos tablas "posts" y "comentarios". Donde sus key son id_post y id_comentario.

(pongo los campos que intervienen en el problema nada mas)

Posts:                          Comentarios:

|--id_post--|                |-----id_comentario-----|
                                  |--id_post_comentado--|

Un post puede tener varios comentarios o sea, en la tabla Comentarios puede haber varios registros con el mismo id_post_comentario.

Como seria la consulta para traer todos los comenarios pertenecientes a un post?
Es correcto como arme las tablas?

Muchas gracias.


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.707


WOS & Khan & Calero LDN


Ver Perfil WWW
Re: Consulta sql, 1 key a varios registros
« Respuesta #1 en: 25 Mayo 2011, 00:15 am »

Sí esta relacionada, puedes hacer un INNER JOIN, por ejemplo.

Si tenemos la siguiente estructura de tabla para POST y COMENTARIO.
Código
  1. mysql> SELECT * FROM tblComentario;
  2. +----+--------------+--------------+
  3. | id | idComentario | comentario   |
  4. +----+--------------+--------------+
  5. |  1 |            1 | Comentario 1 |
  6. |  2 |            1 | Comentario 2 |
  7. |  3 |            2 | Comentario 1 |
  8. |  4 |            3 | Comentario 1 |
  9. |  5 |            3 | Comentario 2 |
  10. |  6 |            3 | Comentario 3 |
  11. +----+--------------+--------------+
  12. 6 ROWS IN SET (0.00 sec)
  13.  
  14. mysql> SELECT * FROM tblPost;
  15. +----+--------+--------------+
  16. | id | idPost | idComentario |
  17. +----+--------+--------------+
  18. |  1 |      1 |            2 |
  19. |  2 |      2 |            1 |
  20. |  3 |      3 |            3 |
  21. +----+--------+--------------+
  22. 3 ROWS IN SET (0.00 sec)

Realizamos el INNER JOIN y quedará así,
Código
  1.    SELECT tblPost.idPost, tblComentario.idComentario, tblComentario.comentario
  2.      FROM tblPost
  3. INNER JOIN tblComentario
  4.        ON tblPost.idComentario = tblComentario.idComentario
  5.     WHERE tblPost.idPost = 2;
El resultado sería,
Código
  1. +--------+--------------+--------------+
  2. | idPost | idComentario | comentario   |
  3. +--------+--------------+--------------+
  4. |      2 |            1 | Comentario 1 |
  5. |      2 |            1 | Comentario 2 |
  6. +--------+--------------+--------------+
  7. 2 ROWS IN SET (0.00 sec)


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Consulta access, no repetir registros.
Programación Visual Basic
agutin1983 5 7,424 Último mensaje 14 Diciembre 2005, 01:08 am
por el_chente23
[?] MySQL "Registros Faltantes" Optimizar Consulta
Bases de Datos
AlbertoBSD 4 8,704 Último mensaje 19 Abril 2009, 08:06 am
por -explicito-
numero de registros y consulta
Bases de Datos
Thekraken 1 1,306 Último mensaje 10 Febrero 2012, 00:42 am
por Carloswaldo
CONSULTA - Orden de registros en php
Desarrollo Web
catriel10 1 867 Último mensaje 19 Enero 2016, 14:45 pm
por eLank0
Indicar nombre a registros de una consulta
Bases de Datos
Brian1511 3 1,069 Último mensaje 27 Junio 2018, 15:15 pm
por Hadess_inf
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines