it-source

postgresql에서 배열 크기를 찾는 방법

criticalcode 2023. 5. 6. 15:09
반응형

postgresql에서 배열 크기를 찾는 방법

배열의 크기를 찾을 수 있는 방법이 있습니까?

예를들면,

CREATE TABLE example (id integer[]) ;

INSERT INTO example VALUES ( '{}');

INSERT INTO example VALUES ( '{5,6,7}');

이로부터 다음과 같은 결과를 얻을 수 있는 가능성이 있습니까,

size

0

3

vyegorov가 언급했듯이,array_length할 수 있을 겁니다또는 배열이 1차원(가능성이 있음)이며 Postgre를 실행 중인 경우SQL 9.4 이상을 사용할 수 있습니다.cardinality:

SELECT cardinality(id) FROM example;

문서를 읽는 것은 사소한 일입니다.

SELECT array_length(id, 1) FROM example;

어레이의 차원이 항상 1이 될 것이라고 가정하는 것은 제가 편안하게 생각하는 것이 아니기 때문에 다음과 같이 했습니다.

SELECT coalesce(array_length(id, 1), 0) as size FROM example;

지금까지...적어도 10년은, 하지만 우리는 많은 일을 하곤 했습니다.coalesce그리고 그것은 꽤 편리했습니다.제가 편안함 때문에 손을 뻗는 것이 아닐까요?

postgres 8.2에서 array_upper를 사용해야 했습니다.

언급URL : https://stackoverflow.com/questions/11188756/how-to-find-the-size-of-an-array-in-postgresql

반응형