Note
フィールドにフルテキスト索引付きのEmployees
表があるとします。 私たちは、このようなクエリ使用してその表を検索することができます。私たちはSELECT ID, Note FROM Employees
のような単純なものでEmployeesView
を作成した場合、我々は、クエリを上げるだろうとSELECT ID FROM EmployeesView WHERE CONTAINS(Note, 'scout')
基礎テーブルがすでに索引付けされている場合は、フルテキスト索引が必要です
でそのビューを照会することはできません、しかしSELECT ID FROM Employees WHERE CONTAINS(Note, 'scout')
を次のエラー:
Cannot use a CONTAINS or FREETEXT predicate on table or indexed view 'EmployeesView' because it is not full-text indexed.
私は、それが他の通常の索引の場合と同様に、基礎となるテーブルに対してFTSを実行するためのビューのは不可能である理由を理解したいと思いますか?
注#1この質問は、既にansweredのようにビューにフルテキストインデックスを作成する方法に関するものではありません。この質問は、なぜそれをやらなければならないのかを理解することです。
注2データベースは、提供されている例より複雑です。同じフルテキスト索引付き表を使用するビューは多数あり、索引付けできるスキーマはいくつかありますが、スキーマ・バインディングの制約のため索引付けできないものもあります。私はまた、それぞれが同一であれば、すべての単一のビューにFTIを追加するのはちょっと奇妙だと思う(そして巨大なディスクスペースの無駄)。