2

我现在正在处理 sharepoint CAML 查询。从一个充满图像、文档、视频等的巨大资源库中按给定名称提取项目。

我不知道 sharepoint 是否索引 Name 列。我正在考虑使用嵌套查询来使这个查询更快。

我的问题是:sharepoint 查询如何工作?先执行外层,还是从内层开始?

我想先过滤 ResourceType(Image,Document..) 。然后过滤类别,最后取出与名称匹配的项目。下面的查询是否像我需要的那样工作?

    <Where>
        <And>
            <Eq><FieldRef Name='IR_ResourcesType' />
                <Value Type='Text'>Image</Value></Eq>
                <And>
                <Eq><FieldRef Name='IR_Category' />
                   <Value Type='Text'>All</Value>
                </Eq>
                <Eq>
                   <FieldRef Name='FileLeafRef' />
                   <Value Type='File'>aaa</Value>
                </Eq>
             </And>
          </And>
       </Where>
4

1 回答 1

1

如果可以,请尝试索引列表中的唯一列之一,以便稍后在 where 子句中使用它进行查询。

作为最佳实践,我们还应该只获取我们将使用的列,以免出现数据自助餐。您可以使用 viewFields 来限制将要显示的列。

这是一个链接,它显示了 CAML 与 SPServices 结合使用的一些提示和技巧,我认为您可能会发现它们很有用。

于 2013-04-23T04:27:41.713 回答