Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/03/2011, 09:42
cambalachito
 
Fecha de Ingreso: febrero-2009
Mensajes: 56
Antigüedad: 16 años, 1 mes
Puntos: 3
Problema midiendo tiempos !!

Saludos, estoy midiendo el tiempo de respuesta cuando hago una consulta a un campo con formato ENUM y otro con formato VARCHAR para saber cual de los dos en más rápido en respuesta. Hice un pequeño probador donde el primer código verifica a ENUM y el siguiente VARCHAR, en los resultados el primer código es más lento que el segundo (ENUM), pero cuando en el código cambio las funciones (el VARCHAR primero), entonces este se hace más rapido que el ENUM. Es decir, no me esta dando la velocidad real, sino según la posición del código.

Quisiera ayuda para probar velocidad de ambos tipos de campo y que el resultado sea lo mas objetivo posible.

Les dejo el codigo y el Mysql.

Código PHP:

<?php

$c 
mysql_connect('localhost''root''') or die('Nada');
mysql_select_db('test'$c);


$tiempo_a microtime(true);
$consulta_1 mysql_query('SELECT a FROM prueba WHERE id = 2');
$array_1=mysql_fetch_array($consulta_1);
echo 
"Tiempo ENUM: ".$array_1['a']." - ".number_format((microtime(true) - $tiempo_a),6,'.','').'<br>';



$tiempo_b microtime(true);
$consulta_2 mysql_query('SELECT b FROM prueba WHERE id = 2');
$array_2=mysql_fetch_array($consulta_2);
echo 
"Tiempo VARCHAR: ".$array_2['b']." - ".number_format((microtime(true) - $tiempo_b),6,'.','').'<br>';


?>
BD:



CREATE TABLE IF NOT EXISTS `prueba` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`a` enum('activo','desactivo') NOT NULL,
`b` varchar(6) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

--
-- Volcar la base de datos para la tabla `prueba`
--

INSERT INTO `prueba` (`id`, `a`, `b`) VALUES
(2, 'activo', 'activo');

Gracias por la Ayuda.