Ver Mensaje Individual
  #9 (permalink)  
Antiguo 07/05/2006, 20:42
cyberbot
 
Fecha de Ingreso: diciembre-2003
Ubicación: Guayaquil
Mensajes: 18
Antigüedad: 20 años, 4 meses
Puntos: 0
Para seleccionar solo los que tiene mas de 5000 hice lo que veras a continuación no se si es lo mejor que hecho, existe alguna forma de optimizar el código?, ahora lo que deseo que si existe por lo menos uno con mas de 5000 o 2 o los que haya, almacenarlos en una nueva tabla llamada transac_inu tomando en cuenta que solo insertaré los que tengan un nuevo ci_be, si el ci_be ya existe y se encuentra en el rango de fechas, en la nueva tabla solo actualizaré el sum_monto.

Este es el código que tengo pero no hallo forma de hacerlo funcionar correctamente, denme una mano por favor. Por cierto el having que se mensiona en el comentario anterior por chiviwalker aun no lo pruebo, si eso otimiza lo que tengo házmelo saber.

Código PHP:

$result 
BDConexion("select ci_be, sum(monto_oc_dls) as sum_monto from solicitud WHERE fecha_sys BETWEEN '$fecha_ant' AND '$fecha_hoy' group by ci_be") or die($error_conex);

if(
mysql_num_rows($result) > 0) {
  while(
$r mysql_fetch_array($result)){
        
      if(
$r['sum_monto'] > 4999){
          
$trans_num $trans_num 1;
        
        
$ci_be    $r['ci_be'];
        
$monto_be    $r['sum_monto'];
       }
        
$result_tran BDConexion("select * from transac_inu") or die($error_conex);
        
$r_tran mysql_fetch_array($result_tran);
        
$id_tran    $r_tran['id_transac_inu'];
        
$fecha_tran     $r_tran['fecha'];
        
$ci_be_tran    $r_tran['ci_be'];
        
        
mysql_free_result($result_tran);
        
//// Actualizo transacción si es el mismo mes y el mismo ci_be y si es un monto distinto
        
if($fecha_ant == $fecha_tran && $monto_be != $r_tran['sum_monto'] && $ci_b  == $ci_be_tran){
        
                
$up_tran['sum_monto'] = $monto_be;
                
BDUpdate('transac_inu'$up_tran$id_tran) or die($error_conex);
        }
  }


Última edición por cyberbot; 08/05/2006 a las 14:05