FULLTEXTを使用して完全なフレーズマッチをクエリしようとしているSQL Server 2008のフルテキストインデックステーブルがあります。私はCONTAINSやLIKEの使用がこれに適しているとは思っていません。他のケースでは、クエリが正確ではないかもしれません(ユーザーが二重引用符でフレーズを囲んでいない)ので、一般的にFREETEXTの柔軟性が必要です。SQL Server 2008のFREETEXTクエリはフレーズマッチングではありません
FREETEXTためdocumentation [MSDN]によれば:
freetext_stringは、二重引用符で囲まれている場合、フレーズ一致ではなく実行されます。ステミングとシソーラスは実行されません。
:用語「シティーホール」は説明欄に表示されますが、代わりに私はこのような結果を得るところSELECT Description FROM Projects WHERE FREETEXT(Description, '"City Hall"')
結果のみを返します。このようなクエリを信じるように私につながる
1マニングホールでのハンディキャップランプの設計。
2アンテナ調査。クライアント:クランストン工学部の市
3国際テニス殿堂への火災被害に関する構造調査。
4ヘラルドホールの衛星設計に関する屋根調査
...など
明らかに、これらの結果は、少なくとも私の句の中の言葉の一つではなく、フレーズ自体が含まれます。さらに悪いことに、私は結果がランク付けされると思っていたが、私が実際に望んでいた2つの結果(実際のフレーズを含むため)が埋められている。リークに悩まさポータケット市役所塔のクインシーマサチューセッツ州
2ぞんざいな構造調査のための既存の市役所の
SELECT Description
FROM Projects
WHERE Description LIKE '%City Hall%'
1主な内外装リフォーム。
これは私がドキュメントを理解していないケースですが、私が探しているものを達成する方法はありますか?つまり、引用符を使わずに検索文字列を渡して、私が今や引用しているものを正確に取得し、その正確なフレーズだけを得ることができるようにするには?
私はこれが古いと知っていますが、同じ問題が発生し、このバグレポートが見つかりました。[FREETEXTはSQL Server 2008 R2では "フレーズ検索"として文書化されていません](http://connect.microsoft。SQL Server/feedback/details/683573/freetext-in-sql-server-2008-r2-no-longer-works-for-phrase-searches) – bfavaretto