PostgreSQL array_remove() 函数使用指南

PostgreSQL array_remove() 函数从指定的数组中删除所有指定的元素并返回修改后的数组。

array_remove() 语法

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

array_remove(array, element) -> array

参数

array
必需的。 要从中删除元素的数组。
element
必需的。 要删除的元素。

返回值

PostgreSQL array_remove() 函数返回一个从中删除了指定的元素的数组。

要删除的元素的类型必须和数组的数据类型相同,否则 array_remove() 函数将会给出一个错误提示。

如果指定的数组为 NULLarray_remove() 函数将返回 NULL

array_remove() 示例

本示例展示了如何使用 PostgreSQL array_remove() 函数删除数组 {1, 1, 2, 1, 2, 1, 2} 中的 2

SELECT array_remove(ARRAY[1, 1, 2, 1, 2, 1, 2], 2);
 array_remove
--------------
 {1,1,1,1}

要删除的元素的类型必须和数组的数据类型一致。比如,您不能像一个整形的数组中添加一个字符串类型的元素,就像下面一样:

SELECT array_remove(ARRAY[0, 1, 2], 'two');

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

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