bueno. vamos a ir desmenuzando el tema. a ver. supongamos este ejemplo:
tabla 'habitacion':
idhabitacion-1
tipo-Individual
cantidad-2
tabla 'reservas':
tiene dos registros pero son de una única reserva que va desde el 02 hasta el 04 de marzo de 2009
idreserva-1
día-02-03-2009
codigo reserva-5698632(generado automáticamente)
habitacionid-1
cantidad-1
idreserva-2
día-03-03-2009
codigo reserva-5698632(generado automáticamente)
habitacionid-1
cantidad-1
partimos de estos datos. ahora tenemos estos otros:
con las dos consultas que tenemos a las tablas tendríamos:
$datos[cantidad] -- número total de habitaciones de ese tipo. en este caso tipo Individual, número total de habitaciones: 2
$reservastotal = $datosrestot ['totalreservas'];
$reservastotal es el número total de reservas realizado de una habitación tipo en cuestión.
yo hago ahora esta consulta:
$sqlrestot = "SELECT COUNT(codigoreserva) AS totalreservas FROM reservas group by codigoreserva";
$resultrestot = mysql_query($sqlrestot) or die (mysql_error());
$datosrestot = mysql_fetch_assoc($resultrestot);
que pretendo? pues lo que pretendo es conseguir el número de reservas que hay de una determinada habitación y para ello los agrupo por reservas diferentes realizadas, es decir, por código de reservas iguales realizados. en este caso debería ser 1, pues sólo tengo una reserva (que tiene un único código de reservas) y que tiene los días 02-03-09 y 03-03-09.
pues hay algún problema porque me dice que las reservas realizadas son 2, es decir, que cuenta cada registro de la tabla (aunque sean de la misma reserva pues tienen el mismo código de reserva) como una reserva diferente.
a qué es debido? es decir, no funciona bien el group by
