PHP - Obtener resultados de SELECT en un bucle

 
Vista:

Obtener resultados de SELECT en un bucle

Publicado por Saiyan (6 intervenciones) el 29/08/2008 13:56:57
Hola, tengo un problema que no puedo resolver.

Por un lado tengo Una consulta que NO muestro a continuación, que obtiene un listado de todas las fechas que existen y las asigno con un mysql_fetch_array a un arreglo ($row_Fechas[ ]). Eso esta perfecto, y debuggeado que esta bien.

Lo que hago a continuación es un bucle en el que voy obteniendo las cantidades de Reclamos que hubieron en cada una de esas fechas.
El bucle es para que vayan ciclando esas fechas a medida que voy obteniendo del array.

EL PROBLEMA ES que no consigo insertar esa concatenación de resultados que me brinda el bucle: lo probé de esta manera a continuación, y despues algo como, " $variable = $variable . $result ", pero tampoco...

Cualquier otra manera de resolverlo, la acepto.

el Codigo:

do {
$sqlTest =
"
SELECT Count( IdReclamo ) Cant
FROM reclamo
WHERE (
IdTipoReclamo = 7
AND
DATE_FORMAT( FechaAlta, '%d/%m/%y' ) = '". $row_Fechas['Fechas'] ."')
";

//para debug
echo $sqlTest . "<br>";

// Lo que intento a continuacion es al SELECT anterior ejecutarlo y luego asociarlo a un arreglo
$Recordset2 = mysql_query($sqlTest, $Graf) or die(mysql_error());
$row_Recordset2 = mysql_fetch_assoc($Recordset2);

//para debug
echo $row_Recordset2['Cant']. "<br>";

} while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); //Mientras haya Registros
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Obtener resultados de SELECT en un bucle

Publicado por Diego Romero (1450 intervenciones) el 29/08/2008 15:34:29
A ver si entendí bien.

Al final la sentencia SELECT que quieres obtener sería algo así:

SELECT Count( IdReclamo ) Cant FROM reclamo WHERE (IdTipoReclamo = 7 AND DATE_FORMAT( FechaAlta, '%d/%m/%y' ) = '03/08/2007' AND DATE_FORMAT( FechaAlta, '%d/%m/%y' ) = '04/08/2007' AND DATE_FORMAT( FechaAlta, '%d/%m/%y' ) = '13/12/2007');

¿Cierto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Obtener resultados de SELECT en un bucle

Publicado por Saiyan (6 intervenciones) el 29/08/2008 15:56:22
hm.. creo que no.
Aunque es una buena manera, que no habiapensado.

Porque lo que necesito es que me devuelva "0" cero en las fechas en las que no hay nada.

Por ahi no expliqué eso en el post anterior.

Alguna idea de como hacer eso?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Obtener resultados de SELECT en un bucle

Publicado por Diego Romero (1450 intervenciones) el 29/08/2008 16:10:48
Había pasado por alto un detalle.

Esto:

SELECT Count( IdReclamo ) Cant ...

debería ser esto:

SELECT Count( IdReclamo ) as Cant ...

Así el resultado de la consulta devolverá un solo campo llamado "Cant" que es el resultado del Count().

De todas formas cuentas con la función mysql_num_rows(); que te devuelve el número de registros que contiene el resultado de la consulta SQL. Pero claro, es más eficiente si la cuenta la hace directamente el servidor, al menos en tu caso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Obtener resultados de SELECT en un bucle

Publicado por Saiyan (6 intervenciones) el 29/08/2008 16:26:17
Ok, gracias.

Pero, tampoco me resuelve.
Lo que necesito es, como te comentaba recibir el conteo 0 en fecha donde no hubo registros algo asi:

10/08/08 0
11/08/08 1
12/08/08 5
13/08/08 0

me explico?

lo que logro de esta manera en la que hago, como en la que me ayudaste, es una consulta que devuelve vacio cuando no hay registros en esa fecha.
Y necesito 0 para ese registro, no vacio.

Que me decis?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar