Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/02/2011, 07:12
Avatar de cristian_cena
cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
¿como hago dos consultas en una?

Hola amigos, resulta que necesito hacer dos consultas al mismo tiempo:

Tengo dos tablas:

Campos de la tabla "graficos_nombres":
id_graficos_nombres | id_graficos | nombre | visible

Campos de la tabla "graficos_grupos":
id_graficos_grupos | id_graficos | id_graficos_nombres | id_graficos_categorias | grupo


----------------------------------------------------------------------------------------------
Actualmente para listar los registros de ambas tablas hago lo siguiente:

Código PHP:
Ver original
  1. //recibo un valor via get
  2. $id_graficos=$_GET['id_graficos'];
  3.  
  4. //realizo la primer consulta
  5. $consulta1="SELECT * FROM graficos_nombres WHERE id_graficos=$id_graficos";
  6.  
  7. //listo los registros de la tabla "graficos_nombres"
  8. while($registros=mysql_fetch_array($consulta1))
  9. {
  10. //dentro del while creo la variable $id_graficos_nombres que uso en la 2da consulta
  11. $id_graficos_nombres=$registros['id_graficos_nombres'];
  12.  
  13. //realizo la segunda consulta
  14. $consulta2="SELECT * FROM graficos_grupos WHERE id_graficos_nombres=$id_graficos_nombres";
  15.  
  16. //listo los registros de la tabla "graficos_grupos"
  17. while($reg=mysql_fetch_array($consulta2))
  18. {
  19. ...
  20. }
  21. }


pero esto esta mal porque lo que necesito es listar los registros de ambas tablas (con sus correspondientes where) dentro del mismo while y no generar dos while como estoy haciendo.

¿Existe alguna manera de hacer las dos consultas en una sola? Leí sobre JOIN pero parece que no es lo que necesito.

Desde ya les agradezco por su ayuda. Un saludo.