What is the best way to add an element to an array when the size of the array is not provided?
With array_append
this is what I can think of:
UPDATE table SET array = array_append((SELECT array FROM table WHERE ...), 'element') WHERE ...;
With array_length
this is what I can think of:
UPDATE table SET array[array_length((SELECT array FROM table WHERE ...), 1)+1] = element;
The simplest thing would be:
or perhaps use the
||
operator:Both of those are equivalent to the more common
set n = n + 11
for numbers.