,希望这不是一个超级困难的问题。我环顾四周,但找不到答案。基本上,我在只读的DB中有一个表格,我正在尝试使用一个案例语句将存储JSON值(我认为?)的列转换为更令人愉悦的内容。
。表显示电子邮件,以及是否订阅邮件列表的状态。
示例在这里
基本上我的查询看起来像这样
select
f.data as "Email",
(
case f.status
when '{"value":true}' then 'Yes'
when '{"value":false}' then 'No'
else NULL
end
) as "Subscribed"
from fields f
当我在示例页面上运行此此操作时,设置为Postgres 11时可以正常工作,但是当我在metabase上运行它时,我会遇到一个错误"错误:操作员不存在:json = unknown",我被困在如何进行。
这里的任何帮助将不胜感激。
该错误意味着f.status
是类型json
,并且您正在尝试将其与不起作用的字符串进行比较。
您可以改用以下(相关文档):
case f.status->>'value'
when 'true' then 'Yes'
when 'false' then 'No'
end
as "Subscribed"