0

アプリケーションは SQL Server データベースに接続します。追加された列がありnvarchar(max)、検索に含める必要があります。この DB のレコード数は数万にすぎず、アプリケーションを使用しているのは数百人にすぎません。全文検索を調べるように言われましたが、これは必要ですか?

4

2 に答える 2

5

これは、5 マイル離れた場所で働いているのに、車の購入を検討するように言われたようなものです。これは必要ですか?変数が多すぎて、質問に対する単純で正しい答えを得ることができません。たとえば、散歩は楽しいですか?利用できる公共交通機関はありますか? スケジュールは柔軟ですか?昼食のために遠くまで出かけたり、仕事の後に用事を済ませたりしなければなりませんか?

全文検索は、一般的な検索が必要な場合に役立ちますが、WHERE col LIKE '%foo%'必要かどうかは、この列がどれだけ大きくなるか、検索が真のワイルドカード検索であるかどうか、ミリ秒とナノ秒のクエリに対する許容度、同時実行の量によって異なります。 、データが常にメモリ内にあり、より効率的に検索できるかどうかなど、一見無関係なものでさえ。

より良い答えは、試してみることです。テーブルにデータのコピーを入力し、フルテキスト インデックスを追加して、LIKE. おそらくそうなるでしょうが、おおよその行数よりも詳細を追加したとしても、確実に知る方法はありません.

于 2012-05-14T17:05:40.167 に答える
0

同様の状況で、より検索しやすくインデックス可能なテーブル構造を作成し、ライブ データベースからレポート データベースにレコードをコピーするバッチ ジョブを設定しました。

私の場合、元のデータは nvarchar(max) 列を必要とするほどではなかったので、それでうまくいくことができました。あなたのマイレージは異なる場合があります。いずれにせよ、答えは「いくつか試してみて、何がうまくいくか見てみよう」です。

于 2012-05-14T17:13:18.427 に答える