PostgreSQL array_prepend() 函数使用指南

PostgreSQL array_prepend() 函数将指定的元素添加到指定的数组的开头并返回修改后的数组。

array_prepend() 语法

这里是 PostgreSQL array_prepend() 函数的语法:

array_prepend(element, array) -> array

参数

element
必需的。 要添加到数组的元素。
array
必需的。 要添加元素的数组。

返回值

PostgreSQL array_prepend() 函数返回一个在其开头添加了指定元素的数组。

如果参数 arrayNULLarray_prepend() 函数将返回一个只包含元素 element 的数组。

添加的元素的类型需要和数组中类型相同,否则 array_prepend() 函数将会给出一个错误提示。

array_prepend() 示例

本示例展示了如何使用 PostgreSQL array_prepend() 函数在数组 {0,1,2} 的开始添加一个元素 3

SELECT array_prepend(3, ARRAY[0, 1, 2]);
 array_prepend
---------------
 {3,0,1,2}

您可以将参数 array 指定为 NULL。例如:

SELECT array_prepend(1, NULL);
 array_prepend
---------------
 {1}

您不能向一个数组中添加不同数据类型的元素。比如,您不能像一个整形的数组中添加一个字符串类型的元素,就像下面一样:

SELECT array_prepend('three', ARRAY[0, 1, 2]);

array_prepend() 函数会返回一个错误:

错误:  无效的类型 integer 输入语法: "three"
第1行SELECT array_prepend('three', ARRAY[0, 1, 2]);
                          ^