sql >> Databasteknik >  >> RDS >> Mysql

Effektivare ordgränsfråga i mySQL

Inget behov av att ha ett FULLTEXT-index. MySQL har särskilda markörer för ordgränser . Från MySQL-dokumentet :

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

Dessa markörer står för ordgränser. De matchar början och slutet av ord, respektive. Ett ord är en sekvens av ordtecken som inte föregås av eller följs av ordtecken. Ett ordtecken är ett alfanumeriskt tecken i alnumklassen eller ett understreck (_).

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


  1. Hur får man ut antalet dagars skillnad mellan två datum på MySQL?

  2. Hur man ansluter till en MySQL-datakälla i Visual Studio

  3. PI() Exempel i SQL Server

  4. Hur man lägger till sekvensnummer för varje element i en grupp med hjälp av en SQL-fråga utan temporära tabeller