我正在尝试使用 aclitem 进行 like/~ 操作并且遇到问题。我无法将此类型转换为 text 或 varchar 类型,因此无法使用 like 或 ~ 运算符。我在使用 cstring 类型时遇到了同样的问题。我的猜测是,这是以某种方式枚举的,但我似乎找不到关键。有任何想法吗?
这是我想运行的查询类型:
select
case when relacl[1] ~ '%searchstring%' then 1 else 0 end as temp1,
case when relacl[1] like '%searchstring%' then 1 else 0 end as temp2,
case when aclitemout(relacl[1]) ~ '%searchstring%' then 1 else 0 end as temp3,
case when aclitemout(relacl[1]) like '%searchstring%' then 1 else 0 end as temp4,
relacl[1]::text as temp5,
relacl[1]::varchar as temp6,
aclitemout(relacl[1])::text as temp7,
aclitemout(relacl[1])::varchar as temp8
from
pg_class c
;