Colección de citas famosas - Frases motivadoras - Resolver el problema de la recuperación difusa china en la base de datos MySQL

Resolver el problema de la recuperación difusa china en la base de datos MySQL

En MySQL, la búsqueda de %a% a menudo arroja algunos registros irrelevantes. Por ejemplo, los caracteres chinos devueltos pueden estar presentes, pero no el carácter A. He encontrado problemas similares antes. Después de leer en detalle el manual de MySQL, descubrí que existe una manera conveniente de resolverlo y obtener resultados satisfactorios. Por ejemplo, desea buscar en la biblioteca de noticias por título. Las palabras clave pueden incluir las siguientes declaraciones SQL en chino e inglés.

Cita: seleccione el nombre del título de identificación de achech_news, donde titlelike devuelve % a% resultados. Algunos campos de título definitivamente tienen la palabra clave A, mientras que otros campos están solo en chino, pero también aparecen en los resultados de búsqueda. La solución es utilizar atributos binarios para la recuperación, como

? Cita: Seleccionar nombres de títulos de identificación de noticias donde títulos binarios como %a%

arroja resultados más correctos que antes, pero las letras en inglés distinguen entre mayúsculas y minúsculas, por lo que a veces los resultados recuperados (como achech y Achech) son diferente. Sabiendo que el atributo BINARY puede resolver el problema anterior, echemos un vistazo a las funciones UCASE y CONCAT admitidas por MySQL para convertir todo el inglés a mayúsculas, y la función CONCAT es un carácter de conexión. A continuación se muestra la declaración SQL que hemos resuelto por completo.

? Cita: seleccione el nombre del título de identificación de un cheque _ noticias donde binario ucase (título) como concat (% ucase (a)%) El paso de recuperación es especificar el atributo como BINARIO para recuperar los resultados con precisión, y el contenido del título de me gusta puede tienen letras mayúsculas y minúsculas, así que primero use la función ucase para convertir todo el contenido de los campos a letras mayúsculas y luego realice una operación similar, mientras que la ventaja de usar concat en el método difuso es que las palabras clave entrantes pueden ser directas, y usted no No es necesario utilizar % comodines para cambiar directamente A su variable, por lo que todo estará bien en cualquier idioma. Por supuesto, también puedes escribirlo así.

lishixinzhi/Article/program/MySQL/201311/29449