Pues tengo un duda sobre Varchar. Se la diferecia entre Char(400) y Varchar(400), pero mi pregunta es.
¿Tarda más en procesar una lectura de un Varchar(2000) de un Varchar(4000)?
Me interesa la parte de la lectura si tarda más uno que otro, teniendo en cuenta que tienen por ejemplo un string con 1500 carácteres los dos.
Gracias,
No creo que haya diferencia entre rendimiento al consultar registros con un VARCHAR(500) que con un VARCHAR(8000). Se supone que VARCHAR solo usará los espacios que necesita la información a guardar, y el espacio sobrante se libera. En pocas palabras, si tanto el VARCHAR(2000) como el VARCHAR(4000) tienen ocupados solamente 1500 espacios, los 500 del primero y los 2500 del segundo se liberan, quedando solo el espacio que ocupan, por lo que al extraer las dos columnas no habrá diferencia de tiempo (eso tengo entendido).
Cita de: Gus Garsaky en 17 Febrero 2015, 00:07 AM
No creo que haya diferencia entre rendimiento al consultar registros con un VARCHAR(500) que con un VARCHAR(8000). Se supone que VARCHAR solo usará los espacios que necesita la información a guardar, y el espacio sobrante se libera. En pocas palabras, si tanto el VARCHAR(2000) como el VARCHAR(4000) tienen ocupados solamente 1500 espacios, los 500 del primero y los 2500 del segundo se liberan, quedando solo el espacio que ocupan, por lo que al extraer las dos columnas no habrá diferencia de tiempo (eso tengo entendido).
Exacto, pero eso es a la hora de la escritura, pero hablo de la hora de la lectura :-)
Tecnicamente CHAR deberia ser mas rapido en cuanto a consultas porque no tiene que estar calcuando espacio en memoria dinamicamente. Hasta un 20% mas rápido segun esto:
http://dba.stackexchange.com/questions/2640/what-is-the-performance-impact-of-using-char-vs-varchar-on-a-fixed-size-field
Cita de: MinusFour en 17 Febrero 2015, 02:27 AM
Tecnicamente CHAR deberia ser mas rapido en cuanto a consultas porque no tiene que estar calcuando espacio en memoria dinamicamente. Hasta un 20% mas rápido segun esto:
http://dba.stackexchange.com/questions/2640/what-is-the-performance-impact-of-using-char-vs-varchar-on-a-fixed-size-field
Lo sé, pero estoy hablando entre un Varchar y un Varchar, no entre un Varchar y un Char.
Cita de: dimitrix en 17 Febrero 2015, 02:37 AM
Lo sé, pero estoy hablando entre un Varchar y un Varchar, no entre un Varchar y un Char.
Va, la pregunta entonces es si hay una diferencia con un campo varchar con una longitud mayor. Yo diria que para la consulta simplemente no, porque tecnicamente deberia seguir el mismo procedimiento sobre la misma información. Al menos para simples lecturas, pero no estoy muy seguro acerca de las otras cosas que puede hacer MySQL con la informacion (sorting y asi).
Pienso igual, gracias^^