如何在MS Graph API中使用AND查询onPremisesExtensionAttributes扩展属性
MS Graph API onPremisesExtensionAttributes 多值查询正确写法
错误写法问题分析
- 第一种写法:
and 'attr2' and 'attr3'语法不完整,每个过滤条件必须包含字段 + 比较运算符 + 值的完整结构,不能仅写值。 - 第二种写法:错误将属性作为独立的
$onPremisesExtensionAttributes参数传递,所有过滤逻辑必须统一放在$filter参数内,多余的$xxx参数会被判定为无效。
正确查询写法
场景1:多个不同扩展属性的AND匹配
若需同时满足多个不同扩展属性的条件(比如extensionAttribute1等于attr2,且extensionAttribute13等于attr1),用and连接每个完整条件:
https://graph.microsoft.com/beta/users?$count=true&$filter=onPremisesExtensionAttributes/extensionAttribute1 eq 'attr2' and onPremisesExtensionAttributes/extensionAttribute13 eq 'attr1'
场景2:同一扩展属性匹配多个值(OR逻辑)
如果需要匹配同一扩展属性的多个可选值(同一属性无法同时等于多个值,因此用OR逻辑),有两种简洁写法:
- 用
or连接多个条件:
https://graph.microsoft.com/beta/users?$count=true&$filter=onPremisesExtensionAttributes/extensionAttribute1 eq 'attr1' or onPremisesExtensionAttributes/extensionAttribute1 eq 'attr2' or onPremisesExtensionAttributes/extensionAttribute1 eq 'attr3'
- 用
in运算符简化:
https://graph.microsoft.com/beta/users?$count=true&$filter=onPremisesExtensionAttributes/extensionAttribute1 in ('attr1','attr2','attr3')
内容的提问来源于stack exchange,提问作者ClaymoreGalatea
相关产品推荐
相关产品推荐

