0

私は最初のフォーラムをコーディングしていて、検索フィールドが欲しいです。

データベース内の特定のスレッドを検索するためにどの関数を使用すべきか疑問に思っています。

使用する必要があります

WHERE title LIKE'%keyword%' OR body LIKE'%keyword%'

それはスレッドコンテンツの一般的な検索アルゴリズムですか?

4

2 に答える 2

2

検索する複数のフィールドがあるので、これはかなり標準的です。

あなたは見てみたいかもしれません

全文検索機能

MySQL全文検索の使用

于 2009-12-12T14:01:57.157 に答える
1

それはスレッドコンテンツの一般的な検索アルゴリズムですか?

そのようなはありません。
必要なものと、要件に最適なものを選択する必要があります。

ただし、考慮事項は次のとおりです。

  • タイトルと本文の両方で検索します(見つけるのは簡単ですが、スレッドが多いと遅くなります)。
  • 本文がフォーマットされたテキスト(おそらくHTML)を含むことができる場合、それも検索に含まれます。
  • SQL Likeの使用は、SQLインジェクションの最初のステップです。すべての入力を慎重にエスケープします。
  • LIKEを使用した検索は、すべてのSQLデータベースで非常に低速な操作です。ユーザーは、全文検索を使用するか、4番目のツールを使用してデータにインデックスを付ける方が適切です。
于 2009-12-12T14:07:20.127 に答える