Mysql
 sql >> Database >  >> RDS >> Mysql

Query sul limite di parole più efficiente in MySQL

Non c'è bisogno di avere un indice FULLTEXT. MySQL ha marcatori speciali per i confini delle parole . Dal Documento MySQL :

[[:<:]], [[:>:]]

Questi marcatori rappresentano i confini delle parole. Corrispondono rispettivamente all'inizio e alla fine delle parole. Una parola è una sequenza di caratteri di parole che non è preceduta o seguita da caratteri di parole. Un carattere word è un carattere alfanumerico nella classe alnum o un trattino basso (_).

mysql> SELECT 'a word a' REGEXP '[[:<:]]word[[:>:]]';   -> 1
mysql> SELECT 'a xword a' REGEXP '[[:<:]]word[[:>:]]';  -> 0