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

Diferencia entre clave, clave principal, clave única e índice en MySQL

KEY y INDEX son sinónimos en MySQL. Quieren decir lo mismo. En las bases de datos, usaría indexes para mejorar la velocidad de recuperación de datos. Por lo general, se crea un índice en las columnas utilizadas en JOIN , WHERE y ORDER BY cláusulas.

Imagina que tienes una tabla llamada users y desea buscar todos los usuarios que tienen el apellido 'Smith'. Sin un índice, la base de datos tendría que pasar por todos los registros de la tabla:esto es lento, porque cuantos más registros tenga en su base de datos, más trabajo tendrá que hacer para encontrar el resultado. Por otro lado, un índice ayudará a que la base de datos salte rápidamente a las páginas relevantes donde se encuentran los registros 'Smith'. Esto es muy similar a cómo nosotros, los humanos, revisamos el directorio de una guía telefónica para encontrar a alguien por el apellido:no comenzamos a buscar en el directorio de principio a fin, siempre que insertemos la información en algún orden que podamos. use para saltar rápidamente a las páginas 'S'.

Las claves primarias y las claves únicas son similares. Una clave principal es una columna, o una combinación de columnas, que puede identificar de forma única una fila. Es un caso especial de clave única . Una tabla puede tener como máximo una clave principal, pero más de una clave única. Cuando especifica una clave única en una columna, dos filas distintas en una tabla no pueden tener el mismo valor.

También tenga en cuenta que las columnas definidas como claves primarias o claves únicas se indexan automáticamente en MySQL.