我正在尝试将 ODATA 与过滤器一起使用,该过滤器仅在 a、b 和 c 都不等于 0 时才显示数据。
我想说的是:
#Data i want to get
a=1
b=0
c=0
#Also data i want to get
a=1
b=1
c=0
#Data i do not want to get
a=0
b=0
c=0
我尝试做
?$filter=a ne 0 and b ne 0 and c ne 0
,但这只能获取所有值必须为 not 0 的数据。即 a=1,b=1,c=1
我想说的是:如果所有值都为0,如何过滤排除数据?
我尝试在代码中处理之前进行过滤,因为这将为我每个请求平均节省 9 秒的时间。
一个选项可以使用
not
运算符。
您不想返回所有
a
、b
和 c
等于 0
的数据。
?$filter=not(a eq 0 and b eq 0 and c eq 0)
如果不支持
not
,则not(a eq 0 and b eq 0 and c eq 0)
的替代方案是
?$filter=a ne 0 or b ne 0 or c ne 0