CONTAINS 述語を使用して Skills 管理プロパティで People の結果をフィルタリングしようとすると、MOSS FulltextSqlQuery で問題が発生します。実演してみましょう:
フィルターを使用しないクエリは、期待される結果を返します。
SELECT AccountName, Skills
from scope()
where freetext(defaultproperties,'+Bob')
And ("scope" = 'People')
結果
Total Rows: 1
ACCOUNTNAME: MYDOMAIN\Bob
SKILLS: Numchucks | ASP.Net | Application Architecture
しかし、CONTAINS 述語を追加すると、期待した結果が得られなくなりました。
SELECT AccountName, Skills
from scope()
where freetext(defaultproperties,'+Bob')
And ("scope" = 'People')
And (CONTAINS(Skills, 'Numchucks'))
結果
Total Rows: 0
SOME ARRAY 述語を使用してこれを達成できることは認識していますが、これが Skills プロパティの CONTAINS 述語で機能しない理由を知りたいです。「複数値」として示されるカスタムのクロールされたプロパティで CONTAINS 述語を使用することに成功しました。Skills プロパティ (複数の値を持つように見えますが) は、SSP 管理サイトの [クロールされたプロパティ] ページでそのように示されていません。
http:///ssp/admin/_layouts/schema.aspx?ConsoleView=crawledPropertiesView&category=People
誰にもアイデアはありますか?