如何解决如何修复Postgres 12.3错误:在CASE中不允许使用set-turning函数
我刚刚将Postgresql从9.5更新到了12.3,现在我从特定的查询中收到此错误消息:
() => void
查询1:
ERROR: set-returning functions are not allowed in CASE
查询2:
select attribute_id,attribute_input_type,string_agg(attr_value,','),false,attribute_predefined_value,attribute_lgd_location_type
from (select distinct
B.attribute_id,B.attribute_input_type,CASE WHEN B.attribute_input_type in ('lgdHierarchy','lgdDepartment')
THEN A.attr_value
ELSE case when B.attribute_input_type in ('checkBox','listBox')
/* error is here -> */ THEN Split_part(unnest(string_to_array(A.attr_value,')),'~',1)
else Split_part(A.attr_value,1)
end
END attr_value,B.attribute_predefined_value,B.attribute_lgd_location_type
from (select json_data.key :: integer attribute_id,json_data.value as attr_value
from sp_custom.application_processing_json a,json_each_text(a.initiated_data->'application_form_attributes') AS json_data
where a.application_id = 1162
) A,temp_output_attr_list ot,schm_sp.appl_attribute_mast B
where A.attribute_id = ot.primary_attribute_id
and ot.find_flag = false
and A.attribute_id = B.attribute_id
and B.attribute_input_type <> 'fieldset'
) X
group by attribute_id,attribute_lgd_location_type;
两个查询在Postgrsql9.5中都可以正常工作,但是Upgrade Postgresql12.3显示了错误。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。