PostgreSQL/Array/Array Upper
Версия от 13:45, 26 мая 2010; (обсуждение)
Upper and lower bound of a specified array dimension
postgres=#
postgres=# CREATE TABLE sal_emp (
postgres(# name text,
postgres(# pay_by_quarter integer[],
postgres(# schedule text[][]
postgres(# );
CREATE TABLE
postgres=#
postgres=# INSERT INTO sal_emp
postgres-# VALUES ("Bill",
postgres(# ARRAY[10000, 10000, 10000, 10000],
postgres(# ARRAY[["meeting", "lunch"], ["training", "presentation"]]);
INSERT 0 1
postgres=#
postgres=# INSERT INTO sal_emp
postgres-# VALUES ("Carol",
postgres(# ARRAY[20000, 25000, 25000, 25000],
postgres(# ARRAY[["breakfast", "consulting"], ["meeting", "lunch"]]);
INSERT 0 1
postgres=#
postgres=# SELECT * FROM sal_emp;
name | pay_by_quarter | schedule
-------+---------------------------+-------------------------------------------
Bill | {10000,10000,10000,10000} | {{meeting,lunch},{training,presentation}}
Carol | {20000,25000,25000,25000} | {{breakfast,consulting},{meeting,lunch}}
(2 rows)
postgres=#
postgres=# -- Upper and lower bound of a specified array dimension
postgres=#
postgres=# SELECT array_upper(schedule, 1) FROM sal_emp WHERE name = "Carol";
array_upper
-------------
2
(1 row)
postgres=#
postgres=#
postgres=# drop table sal_emp;
DROP TABLE
postgres=#
postgres=#