sql >> Base de Datos >  >> RDS >> Mysql

Rendimiento VARCHAR vs TEXT cuando los datos caben en la fila

Usemos algunas herramientas

Dado que la corazonada inicial (ver más abajo) fue un error , intente ejecutar su consulta a través de MySQL Workbench para recopilar Estadísticas de rendimiento de consultas .

corazonada inicial (sin resultado)

Solo un pensamiento:

  • TEXTO el tamaño de la columna en el disco es 2 + N bytes donde N es la longitud de la cadena
  • VARCHAR toma 1 + N bytes (para N ≤ 255) o 2 + N bytes (para 256 ≤ N ≤ 65535)

Intenta ampliar el tamaño del texto en la columna por encima de 256 caracteres y vuelva a ejecutar sus pruebas. Potencialmente, se ejecutarán con un rendimiento más parecido.

También tenga en cuenta que las diferencias que publica se expresan en microsegundos por registro, por lo que podría haber muchos eventos del sistema operativo interponiéndose en el camino o muy simple if (TEXT) {do some additional IO or housekeeping} ruta del código en la fuente.