Pero solo actualiza el primero. :S
Código PHP:
$consultarValores = mysql_query("SELECT valor_porcentual FROM `criterio_calibres` WHERE CONVERT(`criterio_calibres`.`id_especie` USING utf8) = '$especie' AND CONVERT(`criterio_calibres`.`id_productor` USING utf8) = '$productor' AND CONVERT(`criterio_calibres`.`id_variedad` USING utf8) = '$variedad' AND `criterio_calibres`.`etapa` = $etapa ", $dbCon)or die(mysql_error());
while($rowConsultarValores = mysql_fetch_array($consultarValores)){
$valor_porcentual = $rowConsultarValores['valor_porcentual'];
echo $resultadoPrimero = round($valor_porcentual - $resultadoOperatoria, 2);
echo '<br>';
mysql_query("UPDATE criterio_calibres SET valor_porcentual = $resultadoPrimero WHERE CONVERT(`criterio_calibres`.`id_especie` USING utf8) = '$especie' AND CONVERT(`criterio_calibres`.`id_productor` USING utf8) = '$productor' AND CONVERT(`criterio_calibres`.`id_variedad` USING utf8) = '$variedad' AND `criterio_calibres`.`etapa` = $etapa AND `criterio_calibres`.`valor_porcentual` = $valor_porcentual ", $dbCon)or die(mysql_error());
}
Guardo un valor en $valor_porcentual mientras da la siguiente vuelta, me guarda el segundo valor y aquí es donde no actualiza en UPDATE
Solo actualiza a la primera vuelta del WHILE pero las demás no.