2017-09-17 40 views
0

我有floowing函數簽名中的PostgreSQL:調用函數[]單整數

func1(plist integer[]) 

我想送這個功能的intager變量。 basicly撥打電話:

select * from func1(var_integer)

我怎麼能這樣做? 它預計integer[]不是integer。是否有某種轉換?

編輯:

當我這樣做: select * from func1(var_integer::integer[])

我得到:

不能投射型整數到整數[]

回答

1

嘗試:

select * from func1(array_agg(var_integer)) 

函數array_agg(expression)返回參數類型的數組。 因此,如果var_integer類型爲integerarray_agg(var_integer)結果類型爲integer[]

1

有沒有必要array_agg在這裏,它不會工作在更復雜的環境。

使用數組構造函數語法。

select * from func1(ARRAY[var_integer])