在PostgreSQL中我有一个二维数组,如:
SELECT ARRAY[[1,2,3],[4,5,6]]
并且从这个数组中我想要检索整个第一个([1,2,3])数组。 可悲的是:
SELECT (ARRAY[[1,2,3],[4,5,6]])[1]
不起作用,因为它返回null。
有可能吗?
答案 0 :(得分:1)
create table test(id int, val int[][]); insert into test values (1, ARRAY[[1,2,3],[4,5,6]]);
✓ 1 rows affected
select id, val[1:1] from test;
id | val -: | :-------- 1 | {{1,2,3}}
SELECT (ARRAY[[1,2,3],[4,5,6]])[1:1]
| array | | :-------- | | {{1,2,3}} |
dbfiddle here
答案 1 :(得分:0)
好的,我解决了这个问题:
SELECT (ARRAY[[1,2,3],[4,5,6]])[1][1:3]
确实是我想要的。