BLOB列を持つテーブルがあります。私がやりたいのは、単語を選んで順番にリストできるようにすることです。
たとえば、次のものが含まれている場合:
- ボブ・スミスはチーズが好きですが、読書が大好きです
- チャーリーはチョコレートミルクが好きです
- チャールはマンガが大好きですが、クッキーも好きです
それなら私は
- 好き
- 大好き
結果として...これは可能ですか?もしそうなら、どのように?
mysqlだけで実行できるようにしたいのですが、phpも使用できます。
よろしくお願いします、ケニー
BLOB列を持つテーブルがあります。私がやりたいのは、単語を選んで順番にリストできるようにすることです。
たとえば、次のものが含まれている場合:
それなら私は
結果として...これは可能ですか?もしそうなら、どのように?
mysqlだけで実行できるようにしたいのですが、phpも使用できます。
よろしくお願いします、ケニー
これを行うための MySQL 関数が組み込まれているとは思わないでください。PHP を使用して作業を行うか、explode(' ', $myString)
各str_word_count($myString, 1)
単語を含む配列を作成することをお勧めします。次に、配列内の各単語をループしてカウントします。
コードを作り直したので、これを行う必要はもうありません...標準のセットアップでは不可能のようです
Sphinx Search ( http://sphinxsearch.com/ ) は、mysql 内の全文検索だけでなく、他のデータベースやファイル形式の検索に関して多くのことを行うアプリケーションです。つまり、mysql テーブルの関連性を備えた検索を提供します。
そのツールの 1 つは単語カウントを実行します。以下は、データベースで最も人気のある単語を出力するための bash スクリプトです。
GET_TOP_X_STOP_WORDS=27
WORD_FREQ_FILE=~/wordfreq.txt
/usr/local/bin/indexer test1 --buildstops $WORD_FREQ_FILE $GET_TOP_X_STOP_WORDS --buildfreqs