我正在尝试使用以下查询来查询SharePoint列表:
<Where>
<Or>
<In>
<FieldRef Name='col1' />
<Values><Value Type='Integer'>1</Value></Values>
</In>
<In>
<FieldRef Name='col2' />
<Values><Value Type='Integer'>1</Value></Values>
</In>
</Or>
</Where>
都是分类法字段。问题是我没有得到任何结果。仅使用一种条件时,我得到结果,但是将它们与“或”组合时,我没有任何结果。我在做什么错了?
编辑:我正在使用SharePoint 2013,并且我还尝试添加LookupId =“ TRUE”
答案 0 :(得分:1)
我最终使用术语id在分类法字段的隐藏文本字段中进行查询:
<Where>
<Or>
<Contains><FieldRef Name='kf7aa880952e4699a9693b8b7379c884'/><Value Type='Text'>40e7b1fd-3892-4311-8428-6dbe77fc4ad7</Value></Contains>
<Contains><FieldRef Name='le11567cdf314372b377761db5f67b84'/><Value Type='Text'>40e7b1fd-3892-4311-8428-6dbe77fc4ad7</Value></Contains>
</Or>
</Where>
答案 1 :(得分:0)
尝试这样的事情
<FieldRef LookupId='TRUE' Name='MyTaxonomyField' />
<Values>
<Value Type='Integer'>4</Value>
</Values>
答案 2 :(得分:0)
我建议使用CAML构建器来建立您的查询。
尝试以下
<Where>
<Or>
<In>
<FieldRef Name='col1' />
<Values><Value Type='Text'>TAxTextValue</Value></Values>
</In>
<In>
<FieldRef Name='col2' />
<Values><Value Type='Text'>TAxTextValue</Value></Values>
</In>
</Or>
</Where>
有人指出可能存在错误,但您尚未指出SP的版本。
谢谢
特鲁兹