2016-07-13 11 views
0

配列に配列を追加しようとしても動作しないようです。なぜ配列の追加が機能しないのですか+ Postgres

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$; 

関数array_append()アレイに要素を追加し、次のエラー

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

答えて

1

を得るように見えます。オペレータ||で2つの配列を連結する必要があります。

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$; 
関連する問題