私はMS SQL Serverのフルテキスト検索クエリを実行しています。私は特殊文字をエスケープする必要があるので、特殊文字を含む特定の用語を検索することができます。フルテキスト検索文字列をエスケープする組み込み関数はありますか?もしそうでなければ、あなたはどうしますか?SQL Serverの全文検索エスケープ文字ですか?
14
A
答えて
23
悪いニュース:方法はありません。良いニュース:あなたはそれを必要としません(とにかく助けにならないでしょう)。
私のプロジェクトでも同様の問題が発生しました。私の理解では、フルテキストインデックスを構築しながら、SQL Serverは、したがって単語の区切り文字としてすべての特殊文字を扱うことです:
な文字であなたの単語が2つ(またはそれ以上)のフルテキストインデックス内の単語のように表される- 。
- これらの文字は削除され、インデックスには表示されません。
INSERT INTO [ActicleTable] values ('digitally improvements folders') INSERT INTO [ActicleTable] values ('digital"ly improve{ments} fold(ers)')
:後、私たちは、テーブルに行を追加を検討
CREATE TABLE [dbo].[ActicleTable] ( [Id] int identity(1,1) not null primary key, [ActicleBody] varchar(max) not null );
を:
は、我々は(スキップされ)、それに対応するフルテキストインデックスでは、次の表を持って考えてみましょう試してみてください:
SELECT * FROM [ArticleTable] WHERE CONTAINS(*, 'digitally')
SELECT * FROM [ArticleTable] WHERE CONTAINS(*, 'improvements')
SELECT * FROM [ArticleTable] WHERE CONTAINS(*, 'folders')
および第二群のみ第二の行と一致する一方の条件の
SELECT * FROM [ArticleTable] WHERE CONTAINS(*, 'digital')
SELECT * FROM [ArticleTable] WHERE CONTAINS(*, 'improve')
SELECT * FROM [ArticleTable] WHERE CONTAINS(*, 'fold')
最初のグループは、(第2としない)最初の行に一致します。
残念ながら、このような動作が明確に記載されているMSDN(または何か)へのリンクが見つかりませんでした。しかし私はofficial articleを見つけました。これはフルテキスト検索クエリの引用符を変換する方法を示していますが、これは上記のアルゴリズムと[暗黙的に]整列しています。
関連する問題
- 1. SQL Serverの全文検索
- 2. SQL Server全文検索ジレンマ
- 3. SQL Server 2008の - 全文検索
- 4. クエリSQl Server 2005全文検索ノイズ/ストップワード
- 5. Sql Server 2008 Express(全文検索)
- 6. SQL Serverのパフォーマンスに関する全文検索
- 7. SQL Server 2008 R2の文字マッピング/検索と文字単位の置換
- 8. SQL Serverのフルテキスト検索の構文
- 9. postgres全文検索
- 10. SQL Server 2008を使用した全文検索
- 11. SQL Serverで使用できる全文検索ツールとは何ですか?
- 12. エスケープSQL文字列Javaで
- 13. csv文字列からのSQL検索
- 14. 全文検索の眺望
- 15. 検索方法SQL Server 2008の特殊文字(%)
- 16. Sails.jsでの全文検索
- 17. 3文字の単語でmysqlの全文検索
- 18. RailsがSQLエスケープコロン文字で検索
- 19. が....全文検索
- 20. 全文検索ランキング
- 21. SQL Server 2008 R2でエスケープ文字を処理する方法
- 22. 全文検索 - 検索語オーダー
- 23. SQL文字列エスケープ質問
- 24. Windowsの検索 - Cの全文検索#
- 25. GAEで全文検索
- 26. SQL Server 2008 Expressで全文検索を有効にする方法
- 27. 全文検索2テーブル
- 28. SQL Serverの一部の行のみを保存する全文検索カタログ
- 29. SQL文での特定の文字の検索
- 30. SQLでの特殊文字のエスケープ