The docs (section 9.18 for PG 9.6) show as an example for array concatenation
ARRAY[4,5,6] || 7 which works fine. However, trying the same with an array of text doesn't work: # select array['a','b','c'] || 'd'; ERROR: malformed array literal: "d" LINE 1: select array['a','b','c'] || 'd'; ^ DETAIL: Array value must start with "{" or dimension information. Casting the second value to TEXT works. # select array['a','b','c'] || 'd'::TEXT; ?column? ----------- {a,b,c,d} (1 row) The assumption that the second argument is an array constant seems surprising. __________________________________________________________________________________ *Mike Blackwell | Technical Analyst, Distribution Services/Rollout Management | RRD* 1750 Wallace Ave | St Charles, IL 60174-3401 Office: 630.313.7818 mike.blackw...@rrd.com http://www.rrdonnelley.com <http://www.rrdonnelley.com/> * <mike.blackw...@rrd.com>*