Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/07/2010, 11:43
agtc1976
 
Fecha de Ingreso: julio-2010
Mensajes: 23
Antigüedad: 13 años, 9 meses
Puntos: 0
Hola, amigos.

Os planteo la situacion y despues la duda.

He diseñado una base de datos donde hay 4 campos (id, salida, entrega, tipo). Id es autonumérico, Salida (tipo DATE) es la fecha de salida de un papel, Entrega (tipo DATE) es la fecha de entrega de dicho papel, y tipo (ENUM) es el tipo de urgencia que se le da al envio (normal, urgente, extraurgente, superurgente).

Mi intencion es acceder a los resultados de una consulta que me de el DATEDIFF de cada tipo. Esto lo he conseguido. Es decir, he conseguido obtener una lista de los dias que tarda en llegar un papel segun tipo de urgencia normal (13 dias, 11, dias, 8 dias, 12, dias, 8 dias, ....) o urgente (3 dias, 4 dias, 5 dias, 3 dias, 2 dias, ...) ... asi con los 4 casos.

Lo que necesito ahora es hacer un Select multiple que me permita sacar los datos en una Tabla, es decir una tabla con 4 columnas (normal, urgente, extraurgente, superurgente) y que debajo aparezcan los datos DATEDIFF correpondientes a cada tipo.

Este es el codigo de una consulta individual, concretamente de la consulta donde 'tipo'=normal.

<?
//te conectas al servidor
$conec=mysql_connect("localhost","mi id","mi pass");
//conexion a la base de datos
mysql_select_db("mi bd");
//consulta
$query = "select datediff(salida,entrega) as media from fechas where tipo='normal'";
$result = mysql_query($query, $conec) or die ("Error".$query."<br>".mysql_error()."<br>");
$sql_return=mysql_num_rows($result);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo $row['media'].'<br>';
}
mysql_close($conec);
?>

Lo que pido, ¿se puede hacer?

Ya he intentado un codigo del tipo:

<table>
<tr>
<td>Normal</td>
<td>Urgente</td>
<td>ExtraUrgente</td>
<td>SuperUrgente</td>
</tr>
<?
//te conectas al servidor
$conec=mysql_connect("localhost","mi id","mi pass");
//conexion a la base de datos
mysql_select_db("mi bd");
//consulta
$query = "select
case
when tipo='normal' then datediff(salida,entrega) as norm from fechas when tipo='urgente' then datediff(salida,entrega) as urg from fechas when tipo='extraurgente' then datediff(salida,entrega) as extra from fechas when tipo='superurgente' then datediff(salida,entrega) as super from fechas";
$result = mysql_query($query, $conec) or die ("Error".$query."<br>".mysql_error()."<br>");
$sql_return=mysql_num_rows($result);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
?>
<tr>
<td><?php echo $row['norm']; ?></td>
<td><?php echo $row['urg']; ?></td>
<td><?php echo $row['extra']; ?></td>
<td><?php echo $row['super']; ?></td>
</tr>
</table>


...pero seguramente será poco menos que una barbaridad...

Abrazos de antemano

Si necesitais mas datos pedirmelos, ok?

Abrazos

Tengo una idea! Voy a intentar aplicarla y despues os cuen

Gracias

Última edición por GatorV; 30/07/2010 a las 08:46