A pesquisa de texto completo do MySQL é uma maneira eficiente de realizar pesquisas complexas nos dados de texto armazenados no banco de dados.
A pesquisa de texto completo do MySQL permite pesquisar texto em linguagem natural em vez de padrões correspondentes. Ele vai além das LIKE
pesquisas tradicionais por operadores e expressões regulares.
O operador LIKE é comumente usado para correspondência básica de padrões de string com o suporte de caracteres curinga simples, como% (corresponde a qualquer sequência de caracteres) e _ (corresponde a qualquer caractere único. O LIKE é simples, mas pode não ser eficiente para pesquisas de texto complexas em grandes conjuntos de dados.
As expressões regulares (regex) oferecem padrões de pesquisa complexos e flexíveis para que você possa controlar os critérios de pesquisa com mais detalhes. No entanto, construir e interpretar padrões regex pode ser complexo. Semelhante ao LIKE
operador, o regex apresenta problemas de desempenho com grandes conjuntos de dados.
A pesquisa de texto completo do MySQL usa um algoritmo sofisticado que considera a relevância das palavras, a proximidade das palavras e o contexto dos termos de pesquisa para fornecer resultados mais precisos.
A pesquisa de texto completo do MySQL oferece suporte a recursos de pesquisa avançados, como operadores booleanos, pesquisas de frase e classificação do resultado da pesquisa por relevância. Além disso, ele vem com remoção integrada de palavras irrelevantes e permite dicionários personalizados e lematização de palavras para capacidade de pesquisa aprimorada.
Mais importante ainda, a pesquisa de texto completo é otimizada para grandes conjuntos de dados e geralmente mais rápida que o operador LIKE e as expressões regulares.
Recursos de pesquisa de texto completo do MySQL
A seguir estão alguns recursos principais da pesquisa de texto completo do MySQL:
- Interface nativa semelhante a SQL : fornece a instrução semelhante a SQL para realizar pesquisas de texto completo.
- Índice totalmente dinâmico : atualiza o índice da coluna de texto automaticamente sempre que os dados dessa coluna são alterados.
- Tamanho moderado do índice : O tamanho de um
FULLTEXT
índice é relativamente pequeno. - Velocidade : é rápido pesquisar com base em consultas de pesquisa complexas.
Observe que o MySQL suporta índice de texto completo apenas para tabelas MyISAM e InnoDB .
Tutorial de pesquisa de texto completo do MySQL
- Criando índice de texto completo – aprenda como criar um índice de texto completo para realizar pesquisas de texto completo eficientes.
- Realizando pesquisas de texto completo com as funções MATCH() e AGAINST() – mostra como usar as funções MATCH() e AGAINST() para realizar pesquisas de texto completo.
- Pesquisas de texto completo em linguagem natural – Na pesquisa em linguagem natural, o MySQL procura documentos relevantes para a consulta de texto livre em linguagem humana natural.
- Pesquisas booleanas de texto completo – Você aprenderá sobre a pesquisa booleana de texto completo do MySQL e seus principais recursos. Daremos alguns exemplos para ajudá-lo a entender melhor o conceito.
- Expansão de consulta – mostramos um recurso essencial da pesquisa de texto completo do MySQL, conhecido como Expansão de consulta.
- Usando o analisador de texto completo ngram do MySQL – mostra como usar o analisador de texto completo ngram para oferecer suporte a pesquisas de texto completo para idiomas ideográficos, como chinês, japonês, coreano, etc.
- Otimizando o desempenho da pesquisa de texto completo – orienta você sobre como otimizar o desempenho da pesquisa de texto completo.