Recursos do Índice FullText
Tipos de modos de pesquisa de textura completa
Três tipos de pesquisa podem ser realizados usando o índice FullText, que é explicado abaixo:
1. Modo booleano
Esse tipo de pesquisa é usado para as consultas que contêm operadores booleanos, como o operador menor que (''), mais sinal ('+'), menos sinal ('-'), citações duplas (“”), operador curinga (operador ( '*), etc.
2. Modo de linguagem natural
O tipo de pesquisa padrão interpreta a sequência de pesquisa como uma fase literal.
3. Modo de expansão de consulta
A pesquisa é feita duas vezes neste tipo de pesquisa. A segunda pesquisa é aplicada ao resultado da primeira pesquisa para descobrir a saída de pesquisa mais relevante.
Pré -requisitos
Crie uma tabela com dados em um banco de dados MySQL para verificar o uso da pesquisa completa no MySQL. Abra o terminal e conecte -se ao servidor MySQL, executando o seguinte comando:
$ sudo mysql -u rootExecute o seguinte comando para criar um banco de dados nomeado test_db:
Criar banco de dados test_db;Execute o seguinte comando para selecionar o banco de dados:
Use test_db;Execute a seguinte consulta para criar uma tabela chamada clientes com cinco campos:
Crie clientes de tabela (Execute a seguinte consulta de inserção para inserir quatro registros no clientes mesa.
Insira em 'clientes' ('id', 'nome', 'email', 'endereço', 'contact_no') valoresExecute o seguinte comando para adicionar o índice FullText para o endereço campo do clientes mesa:
Alter Table Clients Add FullText (Endereço);Execute o seguinte comando para verificar a lista dos índices definidos do clientes mesa:
Mostrar índice de clientes;Saída
A saída a seguir mostra que existem dois índices para o clientes mesa. Um é o índice btree que foi definido por padrão para o campo primário, e outro é o índice de texto completo que foi definido posteriormente para o endereço campo:
Usos da pesquisa completa
A pesquisa na tabela usando diferentes modos do índice FullText foi mostrada neste tutorial.
Pesquisa FullText no modo booleano
A seguinte consulta selecionada pesquisará a palavra 'Dhanmondi' no endereço campo do clientes mesa no modo booleano. O clientes A tabela contém apenas um registro que corresponde a este critério:
Selecione * FROM CLIENTES WHERE MACK (Endereço) contra ('Dhanmondi' no modo booleano);Saída
A saída a seguir aparecerá após a execução da consulta anterior:
Execute a seguinte consulta selecionada para pesquisar as duas palavras 'Dhaka ' e 'Jigatola ' no endereço campo do clientes tabela usando o índice FullText no modo booleano. Existem duas linhas no clientes Tabela que contém as duas palavras 'Dhaka ' e 'Jigatola ':
Selecione * dos clientesSaída
A saída a seguir aparecerá após a execução da consulta anterior. A saída mostra que o endereço Campo contém 'Dhaka ' e 'Jigatola ':
Execute a seguinte consulta selecionada para pesquisar essas linhas da tabela de clientes que contêm a palavra 'Dhaka ' mas não contém a palavra 'Jigatola ' no endereço campo do clientes tabela usando o índice de text fulltext no modo booleano. Duas linhas existem no clientes Tabela que corresponde aos critérios:
Selecione * FROM CLIENTES WHERE Match (endereço) contra ('dhaka -jigatola' no modo booleano);Saída
A saída a seguir aparecerá após a execução da consulta anterior. A saída mostra o endereço Campo contém 'Dhaka ' mas não 'Jigatola ':
Pesquisa FullText no modo de linguagem natural
Execute o seguinte comando para adicionar o índice FullText para o nome campo do clientes mesa:
Alter Table Clients Add FullText (Nome);A seguinte consulta selecionada pesquisará a palavra 'Sankar ' no nome campo do clientes Tabela no modo de linguagem natural. O clientes A tabela contém dois registros que correspondem a este critério:
Selecione * dos clientesSaída
A saída a seguir aparecerá após a execução da consulta anterior. As linhas que contêm o 'Sarkar 'valor no nome o campo foi mostrado na saída:
Pesquisa de texto completo no modo de expansão de consulta
A seguinte consulta selecionada pesquisará a palavra 'laboni ' no nome campo do clientes tabela no modo de expansão de consulta. O clientes A tabela contém dois registros que correspondem a este critério:
Selecione * dos clientesSaída
A saída a seguir aparecerá após a execução da consulta anterior. Na saída, o campo de nome da primeira linha contém a palavra 'Laboni ' com outra palavra, 'Sarkar ', E o campo de nome da segunda linha contém a palavra correspondente, 'Sarkar '.
Soltar o índice FullText
Execute o seguinte comando para soltar o índice FullText do nome campo:
Alter os clientes da tabela soltar o nome do índice;Execute o seguinte comando para verificar a lista atual do índice do clientes tabela depois de remover o índice de text completo do nome campo:
Mostrar índice de clientes;Saída
A saída a seguir aparecerá após a execução da consulta anterior. A saída mostra que o clientes A tabela contém um índice btree para o eu ia campo e um texto completo para o endereço campo:
Conclusão
As diferentes maneiras de pesquisar conteúdo em uma tabela usando o índice FullText foram mostradas neste tutorial para ajudar os novos usuários do MySQL a aprender os usos da pesquisa completa no MySQL. Além disso, os recursos completos para o índice FullText foram discutidos. Esperamos que você tenha achado este artigo útil. Confira outros artigos de dica do Linux para obter mais dicas e tutoriais.