Características del índice de texto completo
Tipos de modos de búsqueda de texto completo
Se pueden realizar tres tipos de búsqueda utilizando el índice FullText, que se explica a continuación:
1. Modo booleano
Este tipo de búsqueda se utiliza para las consultas que contienen operadores booleanos, como menos ('') operador, más firma ('+'), menos signo ('-'), citas dobles (""), operador de comodín (operador ( '*), etc.
2. Modo de lenguaje natural
El tipo de búsqueda predeterminado interpreta la cadena de búsqueda como una fase literal.
3. Modo de expansión de consulta
La búsqueda se realiza dos veces en este tipo de búsqueda. La segunda búsqueda se aplica al resultado de la primera búsqueda para encontrar la salida de búsqueda más relevante.
Requisitos previos
Cree una tabla con datos en una base de datos MySQL para verificar el uso de la búsqueda de texto completo en MySQL. Abra el terminal y conéctese al servidor MySQL ejecutando el siguiente comando:
$ sudo mysql -u rootEjecute el siguiente comando para crear una base de datos llamada test_db:
Crear base de datos test_db;Ejecute el siguiente comando para seleccionar la base de datos:
Usar test_db;Ejecute la siguiente consulta para crear una tabla llamada clientes Con cinco campos:
Crear clientes de la mesa (Ejecute la siguiente consulta de inserción para insertar cuatro registros en el clientes mesa.
Insertar en 'clientes' ('id', 'nombre', 'correo electrónico', 'dirección', 'contact_no') valoresEjecute el siguiente comando para agregar el índice FullText para el DIRECCIÓN campo de la clientes mesa:
Alteran los clientes de la tabla agregan FullText (dirección);Ejecute el siguiente comando para verificar la lista de los índices definidos del clientes mesa:
Mostrar índice de los clientes;Producción
La siguiente salida muestra que existen dos índices para el clientes mesa. Uno es el índice BTree que se ha definido de forma predeterminada para el campo primario, y otro es el índice de texto completo que se ha definido más adelante para el DIRECCIÓN campo:
Usos de la búsqueda de texto completo
La búsqueda en la tabla utilizando diferentes modos del índice de texto completo se ha mostrado en este tutorial.
Búsqueda de texto completo en modo booleano
La siguiente consulta de selección buscará la palabra 'Dhanmondi' en el DIRECCIÓN campo de la clientes tabla en modo booleano. El clientes La tabla contiene solo un registro que coincide con este criterio:
Seleccione * de los clientes donde coincida (dirección) contra ('dhanmondi' en modo booleano);Producción
La siguiente salida aparecerá después de ejecutar la consulta anterior:
Ejecute la siguiente consulta de selección para buscar ambas palabras ','Dhaka ' y 'Jigatola ' en el DIRECCIÓN campo de la clientes Tabla utilizando el índice FullText en modo booleano. Hay dos filas en el clientes tabla que contiene ambas palabras 'Dhaka ' y 'Jigatola ':
Seleccionar * de los clientesProducción
La siguiente salida aparecerá después de ejecutar la consulta anterior. La salida muestra que el DIRECCIÓN el campo contiene 'Dhaka ' y 'Jigatola ':
Ejecute la siguiente consulta de selección para buscar en esas filas de la tabla de clientes que contienen la palabra 'Dhaka ' pero no contiene la palabra 'Jigatola ' en el DIRECCIÓN campo de la clientes tabla utilizando el índice de texto completo en modo booleano. Existen dos filas en el clientes tabla que coincide con los criterios:
Seleccione * de los clientes donde coincida (dirección) contra ('dhaka -jigatola' en modo booleano);Producción
La siguiente salida aparecerá después de ejecutar la consulta anterior. La salida muestra el DIRECCIÓN el campo contiene 'Dhaka ' pero no 'Jigatola ':
Búsqueda de texto completo en modo de lenguaje natural
Ejecute el siguiente comando para agregar el índice FullText para el nombre campo de la clientes mesa:
Alteran los clientes de la tabla agregan FullText (nombre);La siguiente consulta de selección buscará la palabra 'Sankar ' en el nombre campo de la clientes tabla en modo de lenguaje natural. El clientes La tabla contiene dos registros que coinciden con este criterio:
Seleccionar * de los clientesProducción
La siguiente salida aparecerá después de ejecutar la consulta anterior. Las filas que contienen el 'sarkaR 'Valor en el nombre el campo se ha mostrado en la salida:
Búsqueda de texto completo en modo de expansión de consultas
La siguiente consulta de selección buscará la palabra 'laboni ' en el nombre campo de la clientes tabla en modo de expansión de consultas. El clientes La tabla contiene dos registros que coinciden con este criterio:
Seleccionar * de los clientesProducción
La siguiente salida aparecerá después de ejecutar la consulta anterior. En la salida, el campo de nombre de la primera fila contiene la palabra 'Laboni ' con otra palabra, 'Sarkar ', y el campo de nombre de la segunda fila contiene la palabra coincidente ','Sarkar '.
Drop Fulltext Índice
Ejecute el siguiente comando para soltar el índice de texto completo del nombre campo:
Alteran los clientes de la tabla Drop Nombre del índice;Ejecute el siguiente comando para verificar la lista de índices actual de la clientes tabla después de eliminar el índice de texto completo del nombre campo:
Mostrar índice de los clientes;Producción
La siguiente salida aparecerá después de ejecutar la consulta anterior. La salida muestra que el clientes La tabla contiene un índice BTree para el identificación campo y un texto completo para el DIRECCIÓN campo:
Conclusión
Las diferentes formas de buscar contenido en una tabla utilizando el índice FullText se han mostrado en este tutorial para ayudar a los nuevos usuarios de MySQL a aprender los usos de la búsqueda de texto completo en MySQL. Además, se discutieron las características completas para el índice de texto completo. Esperamos que hayas encontrado este artículo útil. Echa un vistazo a otros artículos de Sugerencia de Linux para obtener más consejos y tutoriales.