Foros del Web » Programando para Internet » PHP »

Ejecutar dos consultas en el mismo while

Estas en el tema de Ejecutar dos consultas en el mismo while en el foro de PHP en Foros del Web. Hola amidos como estais, Mirad tengo dos select que no puedo unir por que parece que no funcionan juntos $consulta1 = 'SELECT * FROM usuarios ...
  #1 (permalink)  
Antiguo 22/02/2011, 18:54
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Ejecutar dos consultas en el mismo while

Hola amidos como estais,

Mirad tengo dos select que no puedo unir por que parece que no funcionan juntos

$consulta1 = 'SELECT * FROM usuarios u LEFT JOIN cuotas_usuarios c ON u.Nusuario = c.Nusuario INNER JOIN cuotas cu ON c.Ncuota = cu.Ncuota AND cu.fecha = '.$fecha.' WHERE u.Nusuario IN (SELECT u2.Nusuario FROM usuarios u2 LEFT JOIN cuotas_usuarios c1 ON u2.Nusuario = c1.Nusuario INNER JOIN cuotas cu2 ON c1.Ncuota = cu2.Ncuota AND cu2.fecha = '.$fecha.' WHERE u2.Ngrupo = '.$_SESSION["Ngrupo"].' AND c1.pagado = "si") ORDER BY c.Nusuario';

$consulta1 = 'SELECT * FROM usuarios u3 LEFT JOIN cuotas_usuarios c2 ON u3.Nusuario = c2.Nusuario INNER JOIN cuotas cu3 ON c2.Ncuota = cu3.Ncuota AND cu3.fecha = '.$fecha.' WHERE u3.Ngrupo = '.$_SESSION["Ngrupo"].' AND u3.Nusuario NOT IN (SELECT u4.Nusuario FROM usuarios u4 LEFT JOIN cuotas_usuarios c3 ON u4.Nusuario = c3.Nusuario INNER JOIN cuotas cu4 ON c3.Ncuota = cu4.Ncuota AND cu4.fecha = '.$fecha.' WHERE u4.Ngrupo = '.$_SESSION["Ngrupo"].' AND c3.pagado = "si") ORDER BY c2.Nusuario';

$resultado1 = mysql_query($consulta1,$conexion);

while ($array1 = mysql_fetch_array($resultado1)){


echo $array1['Nombre'];
echo $array1['nombre_cuota'];
echo $array1['cuota'];
echo $array1['pagado'];
echo '<hr />';

}

La cosa es que necesito que los dos select sean mostrados en el mismo while, estos dos select forman parte de grid el 1º muestra los usuarios que tienen alguna cuota pagada y el segundo los que no, pero claro tienen que aparecer todos en el mismo grid.

Decir que primero debe terminar con el 1º select y depues seguir con el siguiente.

He pensado en escribir un while para cada consulta pero espero encontrar alguna solucion mas eficiente.

a ver si ha alguien se le ocurre alguna idea.

Gracias de ante mano

Última edición por franjgg; 22/02/2011 a las 19:13
  #2 (permalink)  
Antiguo 22/02/2011, 20:26
Avatar de richicasas  
Fecha de Ingreso: abril-2007
Ubicación: Colombia
Mensajes: 692
Antigüedad: 17 años
Puntos: 13
Busqueda Respuesta: Ejecutar dos consultas en el mismo while

Deseas mostras los USUARIOS QUE SI y despues LOS USUARIOS QUE NO ??, entonces has dos while, despues del que pusiste has el otro recorriendo la segunda consulta.

Recomendacion:
Puedes manejar en un campo de la tabla usuarios una especie de estado "pago" y puede tener valores 0 o 1 o SI y NO y luego hacer una sola consulta y ordenar por la columna "pago".
__________________
Juguetes Sexuales

Etiquetas: dos, ejecutar
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 10:21.