列“ foo”的类型为test12.test_type [],但表达式的类型为record []

时间:2019-04-10 09:10:59

标签: greenplum

我正在尝试在Greenplum中创建复合类型,并使用该类型的数组。但是当我尝试将数据插入表中时,它总是显示

  

列“ foo”的类型为test11.test_type [],但表达式的类型为record []。
  提示:您将需要重写或强制转换表达式。   SQL状态:42804”。

我尝试了将数组插入greenplum的所有方法。例如array[(3,4),(2,4)] and '{(1,3), (1,2)}'

create type test11.test123 as (a1 int, a2 int);

create table test11.test(faa qlake_streaming_ioc.test11[], aa int);

insert into test(faa, aa) values (array[(3,4),(2,4)] , 3);

1 个答案:

答案 0 :(得分:0)

我不能说这是否适用于Greenplum,但您可以尝试:

INSERT INTO tab (foo)
   VALUES (ARRAY[(3,4), (2,4)]::test11.test_type[]);