Consider the following one-dimensional ARRAY data type and table.
CREATE TYPE phonenumbers AS CHAR(10) ARRAY[20]; CREATE TABLE employee_info (eno INTEGER, phonelist phonenumbers);
The following query returns an updated copy of the phonelist array, with all the elements updated to the new value:
SELECT ARRAY_UPDATE(phonelist, '9095551234') FROM employee_info;
The following query returns an updated copy of the phonelist array, with a subset of the elements updated to the new value, as specified by the scope reference. The result is that elements 2, 3, and 4 are updated to the new value. The rest of the elements in the array retain their original values.
SELECT ARRAY_UPDATE(phonelist, '9095551234', 2, 4) FROM employee_info;
The following is the same query using method-style syntax.
SELECT phonelist.ARRAY_UPDATE('9095551234', 2, 4) FROM employee_info;