Skip to content

PostgreSQL array_remove() 函数 ​

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

array_remove() 语法 ​

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

sql
array_remove(array, element) -> array

参数 ​

  • array

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

  • element

    必需的。 要删除的元素。

返回值 ​

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

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

如果指定的数组为 NULL,array_remove() 函数将返回 NULL。

array_remove() 示例 ​

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

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

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

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

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

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