2011-06-16 22 views
1

この質問は私のような多くのMySQL初心者にとって有益だと思います。 LONGTEXT型で検索する方法はありますか?私が見てきたように、FULLTEXTはサイズのために私に合っていないTEXTフィールドにしか使用できません。MySQL - longtextで検索

P.S. LONGTEXTはBLOBとして格納されているため、標準的な方法では検索できません。しかし、回避策はありますか?

お時間をいただきありがとうございます。

+0

回避策?正確に何を回避する? – Bohemian

+0

私がcorrecltyを取得した場合、LONGTEXTは標準的な方法で検索できません。しかし、例えば、ポスト・コンテンツがLONGTEXTのWordpressでは、コンテンツを検索する検索があります。したがって**回避策が必要**です。 – Arnthor

答えて

4

あなたはFULLTEXTはLONG​​TEXT列タイプでは動作しません、documentation.

に応じてお好きな機能を通じて、独自の検索を実装することができ、正しいです:

select postid,content from POSTS where content like '%keyword%'; 

が、これはどこのようにできなくなりますFULLTEXT検索と同じくらい効率的です。

1

私はFullTextに格納されたデータの連結と、別のフィールドに格納されたIDの使用を検討するべきだと思います。

データをフィールドに区切る必要がある場合は、別のテーブルを使用して、別々のフィールドを使用して、最初のテーブルとIDで結合します。このようにして、LongText(別のフィールドを持つテーブル)と検索テーブルの全文の両方を使用できます。

+0

まあ、その考えは私の心を横切った、私はいつか試してみるよ。さて、私は簡単にするためにいくつかのスピードを犠牲にすることができると思います。 – Arnthor

+0

それはもちろん、記録の量にもよります。数十万、あなたは少し遅れ、数百万を気付くかもしれません、あなたは別の解決策が必要です;) – T9b