You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CAML Query新增OR条件不生效,如何正确查询SharePoint列表指定数据?

问题原因

你当前的CAML查询不符合语法规则,<Where>节点下仅允许存在1个顶级逻辑节点(<And>/<Or>),你将两组独立的<And>逻辑直接并列放在<Where>下,新增的OR条件会被直接忽略,这是查询不生效的核心原因。另外原有查询里写死的Place=Vincente, New Port, CA条件也会过滤掉你需要的其他数据。

修正后的查询逻辑

根据你的需求,所有查询的前置固定条件为Library=Packaging、Level=A,三个目标场景为或的关系,整理逻辑如下:

  • 场景1:AssignedTo(人员字段)匹配 Marshall, Kim
  • 场景2:Line=Pure 且 Any Local(对应字段名AnyPlace)为Yes
  • 场景3:Any Line为Yes 且 Any Local为Yes

可用的CAML查询代码

<Query>
  <ViewFields>
    <FieldRef Name="AssignedTo" />
  </ViewFields>
  <Where>
    <!-- 顶级And:先匹配固定的Library和Level条件 -->
    <And>
      <Eq>
        <FieldRef Name='Library' />
        <Value Type='Lookup'>Packaging</Value>
      </Eq>
      <And>
        <Eq>
          <FieldRef Name='Level' />
          <Value Type='Choice'>A</Value>
        </Eq>
        <!-- 三个目标场景为或的关系 -->
        <Or>
          <!-- 场景1:匹配指定人员 -->
          <Eq>
            <FieldRef Name='AssignedTo' />
            <Value Type='User'>Marshall, Kim</Value>
          </Eq>
          <Or>
            <!-- 场景2:Line=Pure 且 Any Local为Yes -->
            <And>
              <Eq>
                <FieldRef Name='Line' />
                <Value Type='Lookup'>PURE</Value>
              </Eq>
              <Eq>
                <FieldRef Name='AnyPlace' />
                <Value Type='Boolean'>1</Value>
              </Eq>
            </And>
            <!-- 场景3:Any Line为Yes 且 Any Local为Yes -->
            <And>
              <Eq>
                <FieldRef Name='AnyLine' />
                <Value Type='Boolean'>1</Value>
              </Eq>
              <Eq>
                <FieldRef Name='AnyPlace' />
                <Value Type='Boolean'>1</Value>
              </Eq>
            </And>
          </Or>
        </Or>
      </And>
    </And>
  </Where>
</Query>

注意事项

如果你的“Any Line”字段的内部名称不是AnyLine、“Any Local”字段内部名称不是AnyPlace,需要把代码中对应的FieldRef Name替换为你实际的字段内部名,避免查询报错。

内容的提问来源于stack exchange,提问作者amber amber

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 11:45:03