sql >> データベース >  >> RDS >> Mysql

MySQLを使用したスパマーの検出

    フルテキストマッチ

    MATCHに似たものを実装することを検討できます。 例こちら :

    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)
    

    例として、おそらく:

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

    これらの関数を使用するには、content 列はFULLTEXTである必要があります インデックス。

    scoreとは この例では?

    relevance valueです 。以下に説明するプロセスを通じて計算されます。

    ドキュメント から ページ。




    1. CentOS7での一般的なPostgresタスク

    2. アークウェアを選択する5つの理由

    3. SQL-行から枯渇した値を減算する

    4. PDOSSSL接続でエラーが発生しました