【问题标题】:Why does array append does not work + Postgres为什么数组追加不起作用+ Postgres
【发布时间】:2016-11-16 03:21:48
【问题描述】:

尝试将数组附加到数组似乎不起作用。

DO
$do$
DECLARE
  COUNTER INTEGER = 0;
  CRNS bigint [];
  TMPS bigint [];
BEGIN
  WHILE COUNTER < 2 LOOP
    TMPS := ARRAY(select plain_crn from call_records where timestamp=1467981702966);
    array_append(CRNS,TMPS);
    RAISE NOTICE '%',CRNS;
    COUNTER := COUNTER + 1;
  END LOOP;  
END
$do$;

似乎得到以下错误

ERROR:  function array_append(bigint[], bigint[]) does not exist
LINE 1: SELECT array_append(CRNS,TMPS)
           ^

【问题讨论】:

    标签: arrays postgresql postgresql-9.4


    【解决方案1】:

    函数array_append() 将一个元素附加到一个数组中。您应该使用运算符|| 连接两个数组。

    DO
    $do$
    DECLARE
      COUNTER INTEGER = 0;
      CRNS bigint [];
    BEGIN
      WHILE COUNTER < 2 LOOP
        CRNS := CRNS || ARRAY(select plain_crn from call_records where timestamp=1467981702966);
        RAISE NOTICE '%',CRNS;
        COUNTER := COUNTER + 1;
      END LOOP;  
    END
    $do$;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-28
      • 1970-01-01
      • 1970-01-01
      • 2015-06-04
      • 2020-11-10
      • 2011-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多