Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wyszukiwanie pełnotekstowe Mysql z dopasowaniem i przeciw

Powinieneś użyć REGEXP '[[:<:]]aa[[:>:]]' aby znaleźć dokładne słowo, więc spróbuj poniżej zapytania, działa dobrze.

SELECT * FROM `table_name` 
     WHERE `table_name`.`Description` REGEXP '[[:<:]]aa[[:>:]]' 
     and `table_name`.`Description` REGEXP '[[:<:]]cc[[:>:]]';

UWAGA: Możesz również użyć „%cc%”, ale może to być złożony problem, ponieważ jeśli wyszukasz „cc”, oznacza to, że przeszuka cc parse w całym ciągu, a nie dokładne słowo, więc zdecydowanie polecam użycie REGEXP '[[:<:]]word[[:>:]]

Przykład:

Tabela wprowadzania

      Description
    aa   bb cc   dd
    xx   aa ff   gg
    hh   kk cc   qq
    cc   ee tt   aa
    aamm bb cc   dd
    aa   bb ccmm dd

Wyjście:

     Description
   aa   bb cc   dd   
   cc   ee tt   aa    


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dobra praktyka dzielenia danych w wielu bazach danych?

  2. Zapytanie o zakres czasu między datami przy użyciu DATETIME mysql

  3. Strefy czasowe MySQL

  4. MySQL - Nie można dodać lub zaktualizować wiersza podrzędnego:ograniczenie klucza obcego nie powiodło się

  5. Jak używać tagu JSTL sql