English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En versiones inferiores a5.6En la versión de MySQL, no se puede usar un índice basado en una función. Primero, tendremos que crear una tabla.
mysql> create table FunctionIndexDemo - > ( - > FirstName varchar(100) - > );
Veamos la sintaxis para crear un índice basado en una función.
create index index_name on yourTableName (column_name(IntegerSize));
Esto es la consulta.
mysql> create index indFirstName on FunctionIndexDemo (FirstName(6)); Registros: 0 Duplicados: 0 Advertencias: 0
Verificar si el índice existe.
mysql> SHOW INDEX FROM FunctionIndexDemo;
Esto es la salida.
+-------------------+------------+--------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+ | Tabla | No_unique | Nombre_clave | Secuencia_en_indice | Nombre_columna | Colación | Cardinalidad | Sub_part | Empaquetado | NULL | Tipo_de_indice | Comentario | Comentario_de_indice | Visible | +-------------------+------------+--------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+ | functionindexdemo | 1 | indFirstName | 1 | FirstName | A | | 0 | 6 | NULL | SÍ | BTREE | | | SÍ | +-------------------+------------+--------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+ 1 fila en conjunto (0.24 sec)