Tecnología

Inicio

Buscar MySQL Tutorial

La base de datos MySQL le permite realizar búsquedas en lenguaje natural en cualquier campo basada en caracteres a través del uso de un índice FULLTEXT. Una búsqueda de texto completo utiliza palabras vacías (palabras que no se buscará, como el, y, y que), búsquedas booleanas y votos de importancia para devolver resultados que se asemejan más a lo que busca.

Los basicos

la búsqueda en lenguaje natural significa que la frase o palabra se buscaron como si se hablaba, sin operadores especiales. Para una búsqueda en lenguaje natural MySQL las cadenas de búsqueda deben tener entre cuatro y 254 caracteres y las palabras deben estar separados por un delimitador, como un espacio, coma, o período. El analizador de MySQL no puede separar las palabras sin algún tipo de delimitador. El analizador eliminará cualquier palabras vacías de las palabras de búsqueda (ver Recursos para obtener una lista de palabras). Las palabras vacías no serán parte de la búsqueda y si sólo hay palabras vacías en la búsqueda serán no tuvo ningún resultado.

Cada fila que coincide con los parámetros de búsqueda se da una calificación de relevancia y los resultados se devuelven basa en la calificación, de mayor a menor. Las búsquedas que coincidan con más del cincuenta por ciento de las filas o menos de tres filas de datos no se devuelven. Esto es muy diferente de la función like () que funciona como una expresión regular, en busca de la cadena exacta independientemente de la colocación y la frecuencia de ocurrencia.

la sintaxis

Con el fin de apoyar la búsqueda de texto completo, la mesa debe ser creado con un índice de texto completo y las columnas indexadas deben tener un tipo de datos de caracteres (CHAR, VARCHAR, o TEXT).

CREAR TABLA artículos
(Id INT (10) DEFAULT '0' AUTO_INCREMENT,
FECHA date_posted,
categoría INT (2),
título VARCHAR (255) NOT NULL,
Artículo NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (categoría),
FULLTEXT (título, artículo))
IR

Para consultar los datos, se utiliza una instrucción SELECT como:

SELECT id, el título de los artículos DONDE PARTIDO (título, artículo) CONTRA ( 'MySQL')
IR

La cláusula de coincidencia debe ser exactamente los mismos que los campos especificados en el índice FULLTEXT.

Para utilizar un lugar de búsqueda booleana las palabras "en el modo booleano" después de que la cadena de búsqueda.

SELECT id, el título de los artículos DONDE PARTIDO (título, artículo) CONTRA ( '+ MySQL -PHP' EN MODO BOOLEANA)
IR

Esta consulta coincidirá con todos los artículos que contienen la cadena "MySQL", pero que no contienen la cadena "PHP". Para obtener una lista completa de los operadores booleanos ver Recursos más adelante.