Creación y eliminación de índices SQL

1. Introducción a la creación, eliminación y uso del índice de puntos de conocimiento

  • 1.1 Crear índice para crear:

CREATE
  [UNIQUE -- 唯一索引
  | FULLTEXT -- 全文索引
  ] INDEX index_name ON table_name -- 不指定唯一或全文时默认普通索引
  (column1[(length) [DESC|ASC]] [,column2,...]) -- 可以对多列建立组合索引 
  • 1.2 Alterar la forma de crear un índice:

ALTER TABLE tb_name ADD [UNIQUE | FULLTEXT] [INDEX] index_content(content)
  • 2.1 método de caída para eliminar el índice:

DROP INDEX <索引名> ON <表名>
  • 2.2 Alterar la forma de eliminar el índice:

ALTER TABLE <表名> DROP INDEX <索引名>
  • 3.1 Uso de índices:

    • El principio de coincidencia del prefijo más a la izquierda se cumple cuando se usa el índice, es decir, para el índice compuesto (col1, col2), cuando no se considera la optimización del motor, la condición debe ser que col1 esté delante de col2, o solo col1. utilizado para que el índice surta efecto;
    • El índice no contiene columnas con valores NULL
    • Una consulta solo usa el índice una vez, si el índice se usa en donde, order by no lo usará
    • Al hacer una comparación de campos, el índice solo se usará cuando se determine el prefijo
    • El índice no se usará después de las operaciones en la columna, como year(start_time)<2020 no usará el índice en start_time

2. Caso

(1) Hay una tabla de información de pruebas de examen exam_info, que contiene información de varios tipos de pruebas de examen. Para consultar la tabla de manera más conveniente y rápida, se deben crear los siguientes índices en la tabla exam_info, y las reglas son las siguientes:

Cree un índice común idx_duration en la columna de duración, cree un índice único uniq_idx_exam_id en la columna exam_id y cree un índice de texto completo full_idx_tag en la columna de etiquetas.

create index idx_duration on examination_info(duration);
create unique index uniq_idx_exam_id on examination_info(exam_id);
create fulltext index full_idx_tag on examination_info(tag);

De acuerdo con el significado de la pregunta, se devolverán los siguientes resultados:

examen_info 0 PRIMARIO 1 identificación A 0 BÁRBOL
examen_info 0 uniq_idx_exam_id 1 id_examen A 0 BÁRBOL
examen_info 1 idx_duración 1 duración A 0 BÁRBOL
examen_info 1 etiqueta_idx_completa 1 etiqueta 0 TEXTO COMPLETO

Observaciones: El fondo comparará los resultados de salida a través de la declaración SHOW INDEX FROM exam_info

(2) Elimine el índice único uniq_idx_exam_id y el índice de texto completo full_idx_tag en la tabla exam_info.

drop index uniq_idx_exam_id on examination_info;
drop index full_idx_tag on examination_info;

Supongo que te gusta

Origin blog.csdn.net/weixin_48272780/article/details/128329617
Recomendado
Clasificación