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

Wykrywanie spamerów za pomocą MySQL

Dopasowanie pełnotekstowe

Możesz przyjrzeć się zaimplementowaniu czegoś podobnego do MATCH przykład tutaj :

mysql> SELECT id, body, MATCH (title,body) AGAINST
    -> ('Security implications of running MySQL as root') AS score
    -> FROM articles WHERE MATCH (title,body) AGAINST
    -> ('Security implications of running MySQL as root');
+----+-------------------------------------+-----------------+
| id | body                                | score           |
+----+-------------------------------------+-----------------+
|  4 | 1. Never run mysqld as root. 2. ... | 1.5219271183014 |
|  6 | When configured properly, MySQL ... | 1.3114095926285 |
+----+-------------------------------------+-----------------+
2 rows in set (0.00 sec)

Więc na przykład na przykład:

SELECT id, MATCH (content) AGAINST ('your string') AS score
FROM messages 
WHERE MATCH (content) AGAINST ('your string')
    AND score > 1;

Pamiętaj, że aby korzystać z tych funkcji, Twoja content kolumna musiałaby być FULLTEXT indeks.

Co to jest score w tym przykładzie?

Jest to relevance value . Jest obliczany w procesie opisanym poniżej:

Z dokumentacji strona.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. liczyć rekordy łączące tabele pytań i odpowiedzi

  2. Przydatna klasa bazy danych PHP

  3. Problem z Kreatorem źródeł danych MySQL dla programu Visual Studio / Visual Studio 2017. Odwołanie do obiektu nie jest ustawione na instancję obiektu

  4. Jak połączyć zapytanie SELECT + WHERE z zapytaniem INSERT?

  5. MySQL - zignoruj ​​błąd wstawiania:zduplikowany wpis