我有一个表employer_entity
,其中包含tokens
列。此列是一个 varchar
,它包含许多用逗号分隔的标记,例如:
id | tokens
---|------------------
1 | aaaaa,bbbbb,ccccc
现在我想构建一个查询来检查 tokens
列是否包含标记 aaaaa
。
这是我所拥有的
select *
from employer_entity
where 'aaaaa'
in (string_to_array(employer_entity.tokens, ','))
但它抛出一个错误
Array value must start with "{" or dimension information.
最佳答案
您正在寻找 any
运算符,而不是 in
运算符:
SELECT *
FROM employer_entity
WHERE 'aaaaa' = ANY(STRING_TO_ARRAY(employer_entity.tokens, ','))
关于sql - Postgres 字符串到数组并检查是否包含值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74837618/