3

BLOB列を持つテーブルがあります。私がやりたいのは、単語を選んで順番にリストできるようにすることです。

たとえば、次のものが含まれている場合:

  • ボブ・スミスはチーズが好きですが、読書が大好きです
  • チャーリーはチョコレートミルクが好きです
  • チャールはマンガが大好きですが、クッキーも好きです

それなら私は

  1. 好き
  2. 大好き

結果として...これは可能ですか?もしそうなら、どのように?

mysqlだけで実行できるようにしたいのですが、phpも使用できます。

よろしくお願いします、ケニー

4

3 に答える 3

1

これを行うための MySQL 関数が組み込まれているとは思わないでください。PHP を使用して作業を行うか、explode(' ', $myString)str_word_count($myString, 1)単語を含む配列を作成することをお勧めします。次に、配列内の各単語をループしてカウントします。

于 2009-07-23T19:13:15.570 に答える
0

コードを作り直したので、これを行う必要はもうありません...標準のセットアップでは不可能のようです

于 2009-08-03T20:02:11.073 に答える
0

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
于 2009-07-23T19:45:44.753 に答える