我有一个帖子,每个帖子都有标签(varchar[]),我试图根据标签找到相关的帖子。这就是为什么我要检查目标帖子或其任何子集的所有标签是否都包含在其他帖子的“tag”数组中。
我已经检查了几个来源:
Postgres: check if array field contains value?
https://www.postgresql.org/docs/9.1/functions-array.html
根据他们的说法,@>应该适用于这种情况,但两者都不适用
select * from posts where tags @> '{"California", "K-8"}';nor
select * from posts where tags @> array['California', 'K-8']::varchar[];正常工作:当我有两个带有标签的帖子时,我得到了一个空的结果:
{'California','K-8','Legislation','AB77'}, {'California','K-8','Tips & Tricks'}如果有人能为这个问题提供解决方案,我将不胜感激:-)
编辑:我已经知道问题出在哪里了--问题出在存储数据的格式上:在我做了修改之后
{'California','K-8','Tips & Tricks'}至
{California,K-8,"Tips & Tricks"}在pgAdmin中,一切都开始正常工作。
发布于 2021-09-27 07:21:42
我已经找出了问题所在--问题出在存储数据的格式上:在我进行了更改之后
{'California','K-8','Tips & Tricks'} to
pgAdmin中的{California,K-8,"Tips & Tricks"}一切都开始正常工作。
https://stackoverflow.com/questions/69327705
复制相似问题