Index: doc/src/sgml/array.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/array.sgml,v retrieving revision 1.66 diff -c -r1.66 array.sgml *** doc/src/sgml/array.sgml 28 Apr 2008 14:48:57 -0000 1.66 --- doc/src/sgml/array.sgml 15 Oct 2008 14:25:53 -0000 *************** *** 322,327 **** --- 322,339 ---- 2 (1 row) + + array_length will return the length of a specified + array dimension: + + + SELECT array_length(schedule, 1) FROM sal_emp WHERE name = 'Carol'; + + array_length + -------------- + 2 + (1 row) + Index: doc/src/sgml/func.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/func.sgml,v retrieving revision 1.450 diff -c -r1.450 func.sgml *** doc/src/sgml/func.sgml 14 Oct 2008 17:12:32 -0000 1.450 --- doc/src/sgml/func.sgml 15 Oct 2008 14:25:57 -0000 *************** *** 9399,9404 **** --- 9399,9415 ---- + array_length(anyarray, int) + + + int + returns length of the requested array dimension + array_length(array[1,2,3], 1) + 3 + + + + array_lower(anyarray, int) Index: src/include/catalog/pg_proc.h =================================================================== RCS file: /projects/cvsroot/pgsql/src/include/catalog/pg_proc.h,v retrieving revision 1.520 diff -c -r1.520 pg_proc.h *** src/include/catalog/pg_proc.h 14 Oct 2008 17:12:33 -0000 1.520 --- src/include/catalog/pg_proc.h 15 Oct 2008 14:25:59 -0000 *************** *** 995,1000 **** --- 995,1002 ---- DESCR("array lower dimension"); DATA(insert OID = 2092 ( array_upper PGNSP PGUID 12 1 0 0 f f t f i 2 23 "2277 23" _null_ _null_ _null_ array_upper _null_ _null_ _null_ )); DESCR("array upper dimension"); + DATA(insert OID = 2176 ( array_length PGNSP PGUID 14 1 0 0 f f t f i 2 23 "2277 23" _null_ _null_ _null_ "select array_upper( $1, $2 ) - array_lower( $1, $2 ) + 1" _null_ _null_ _null_ )); + DESCR("array length"); DATA(insert OID = 378 ( array_append PGNSP PGUID 12 1 0 0 f f f f i 2 2277 "2277 2283" _null_ _null_ _null_ array_push _null_ _null_ _null_ )); DESCR("append element onto end of array"); DATA(insert OID = 379 ( array_prepend PGNSP PGUID 12 1 0 0 f f f f i 2 2277 "2283 2277" _null_ _null_ _null_ array_push _null_ _null_ _null_ ));