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

¿Es mejor usar * al llamar a muchos campos en mysql?

Nota: nombrar todos los campos es, por supuesto, una buena práctica, pero en esta publicación solo discutiré los beneficios de rendimiento, no los de diseño o mantenimiento.

El * la sintaxis puede ser más lenta por las siguientes razones:

  • No todos los campos están indexados y la consulta utiliza un análisis completo de la tabla. Probablemente no sea tu caso:es casi imposible que todos los campos que devuelves estén indexados con un solo índice.

  • Devolver campos finales de una tabla que contiene columnas de longitud variable puede resultar en una ligera sobrecarga de búsqueda:para devolver 20th campo, anterior 19 deben examinarse y calcularse las compensaciones.

  • Solo es necesario devolver más datos (pasar por la conexión).

Dado que necesita casi todos los campos, la última razón es probablemente la más importante. Diga, la description TEXT el campo solo puede ser 1 de 50 campos no utilizados en la página, pero pueden ocupar 10 veces más espacio que todos los demás campos juntos.

En este caso, será mejor, por supuesto, nombrar todos los campos y omitir los campos largos que no necesita.