Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 如何在强制转换期间调用用户定义的数据类型_Postgresql_Casting - Fatal编程技术网

Postgresql 如何在强制转换期间调用用户定义的数据类型

Postgresql 如何在强制转换期间调用用户定义的数据类型,postgresql,casting,Postgresql,Casting,我有一个定义了模式的表,其中一列有用户定义的数据类型 现在,我将数据作为JSON对象摄取到数据库中,因此在查询数据时,我希望动态调用数据类型 表a: id name type 1 id text 2 summary text 3 Investigator UDT1 4 Instance UDT2 现在我正在手动施法,效果很好,但我正在努力通过它的飞行 SELECT id, cas

我有一个定义了模式的表,其中一列有用户定义的数据类型

现在,我将数据作为JSON对象摄取到数据库中,因此在查询数据时,我希望动态调用数据类型

a

id  name            type
1   id              text
2   summary         text
3   Investigator    UDT1
4   Instance        UDT2
现在我正在手动施法,效果很好,但我正在努力通过它的飞行

SELECT id,
       cast(d.* as tempdb.ref_investigator)
FROM tempdb.values_temp t,
     jsonb_populate_record(
        null::tempdb.ref_investigator,
        t.value::jsonb
     ) d
WHERE t.id IN ('F15','F16') 


调用
jsonb\u populate\u record
看起来不正确。也许你可以分享你的实际代码。@LaurenzAlbe这是我的实际查询,我已经删除了可能引起混淆的不必要的列,从tempdb.values\u temp t,jsonb\u populate\u record(null::tempdb.ref\u investor,t.value::jsonb)d其中t.id在('F15','F16')中我试着相应地修改这个问题,但我还是弄不明白。请对其进行更多编辑并使其更清晰:1)表
a
值\u temp
之间的关系是什么?2) 数据样本与问题的关系如何?3)
UDT1
UDT2
的实际名称是什么(因此我们知道这与查询有什么关系)4)您“在飞行中”到底想做什么?不要害怕冗长。对
jsonb\u populate\u record
的调用看起来不太正确。也许你可以分享你的实际代码。@LaurenzAlbe这是我的实际查询,我已经删除了可能引起混淆的不必要的列,从tempdb.values\u temp t,jsonb\u populate\u record(null::tempdb.ref\u investor,t.value::jsonb)d其中t.id在('F15','F16')中我试着相应地修改这个问题,但我还是弄不明白。请对其进行更多编辑并使其更清晰:1)表
a
值\u temp
之间的关系是什么?2) 数据样本与问题的关系如何?3)
UDT1
UDT2
的实际名称是什么(因此我们知道这与查询有什么关系)4)您“在飞行中”到底想做什么?不要害怕长篇大论。
("1","summary1","KUM,  HYE-CHUNG",kum@tamu.edu)
("2","summary2","Zakon,  Harold",h.zakon@mail.utexas.edu)