2016-11-16 19 views
0

PostgreSQL 9.5の10int[]に追加する際に助けが必要です。Postgres整数配列に値を追加する

私はそれを更新するには、このフォーマットを使用することができるはずのドキュメントを見てみると、それが動作していません。

int[] + int push element onto array (add it to end of array) 

私はこれを実行しようとしている:

update table1 set integer_array = integer_array + 10::Integer. 

それは動作しませんでしたし、このエラーが発生しました:

ERROR: operator does not exist: integer[] + integer 
    Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts. 
    Position: 67 

私はこれがdocuこの操作をどのように実行するかについての指導をします。

答えて

2

使用array_append関数は、配列の最後に要素を追加します

UPDATE table1 
SET integer_array = array_append(integer_array, 5); 

5は、それはあなたのケースでは、整数データ型のですが、選択肢の値です。 WHERE句も必要になりますが、テーブル全体を更新しないでください。

、それがどのように動作するかを確認するには、以下試してみてください。

SELECT ARRAY[1,2], array_append(ARRAY[1,2],3); 

結果:素晴らしい仕事

array | array_append 
-------+-------------- 
{1,2} | {1,2,3} 
+0

感謝を。私はこれを答えとして受け入れることができます。 –

+0

私は助けてくれるとうれしいです:-) –

+0

Java Spring Bootでこれを行うことはできますか? –

関連する問題