让我们看一下可以用来过滤结果的不同比较运算符。
相等运算符(_eq
,_neq
)
的_eq
(等于)或_neq
(不等于)运算符是与任何相容的Postgres键入以外 json或jsonB(如Integer
,Float
,Double
,Text
,Boolean
, Date/ Time/ Timestamp
等)。
基于列表的搜索运算符(_in
,_nin
)
将_in
(在列表中)和_nin
(未在列表)运算符用于字段值的比较值的列表。它们是相容的Postgres键入以外 json或jsonB(如Integer
,Float
,Double
,Text
,Boolean
, Date/ Time/ Timestamp
等)。
文本搜索或模式匹配运算符(_like
,_like
等)
_like
,_nlike
,_ilike
,_nilike
,_similar
,_nsimilar
运算符用于对串/文本字段模式匹配。
这些运算符的行为与SQL运算符完全相同
_like
是区分大小写的。_ilike
不区分大小写的搜索。_similar
区分大小写
JSONB运算符(_contains
,_has_key
等)
_contains
,_contained_in
,_has_key
,_has_any
和_has_key_
所有运算符都用于基于JSONB列进行筛选。
PostGIS空间关系运算符(_st_contains
、_st_crosss
等)
_st_crosss
,_st_equals
,_st_intersects
,_st_overlaps
,_st_touch
,_st_within
和_st_d_within
的运算符用于基于类似于列的几何体进行筛选。
_st_d_within
和st_intersects
也可用于geography列。
这里不太懂 应该是几何数组的筛选吧
筛选或检查空值(_is_null
)
可以使用is_null
运算符来检查空值。
筛选与条件不符的值(_not
)
_not
运算符可用于获取某些条件不为真的结果,反转某个条件过滤。
在同一查询中使用多个筛选器(_and
,_or
)
可以在同一个where参数中对多个参数进行分组,方法是使用_and
或_or
运算符根据多个条件筛选结果。
_add
写法样例