sql >> Base de Datos >  >> RDS >> Mysql

Consulta de coincidencia exacta de una cadena en SQL

Si entiendo la pregunta correctamente, quiere hacer coincidir "diamante" cuando es una palabra distinta y no parte de otra palabra como "diamondville". Podría hacer algo como SELECT * FROM tproduct WHERE descripción como '% diamante %' y esto coincidiría con todos los registros que tienen "diamante" rodeado de espacios.

Pero eso no funcionaría. Eso no encontraría registros donde la descripción comience con "Diamante" o donde haya una coma o un punto después de "Diamante"

Necesita hacer coincidir una expresión regular. Puede especificar los límites de las palabras con eso:

select * from t2 where description regexp '[[:<:]]diamond[[:>:]]';

Consulte esta página para obtener más información sobre las expresiones regulares de MySQL:http:// dev.mysql.com/doc/refman/5.1/en/regexp.html