array() 함수

' array() ' 함수는 지정된 유형의 배열을 생성합니다.

구문

' array() ' 함수의 구문은 다음과 같습니다:
array = array(int type);
' type ' 값은 다음 표와 같이 생성할 배열의 유형을 지정하는 정수 코드입니다:
표 1. 배열 유형
코드 유형 설명
1 int1 8비트.
2 int2 16비트.
3 int4 32비트.
4 int8 64비트.
5 날짜 날짜 범위: 0001년 1월 1일 - 9999년 12월 31일. 디스크 사용량은 4바이트입니다.
6 시간 소수점 여섯 자리까지 시, 분, 초를 입력합니다. 범위는 00:00:00.000000 - 23:59:59.999999. 디스크 사용량은 8바이트입니다.
7 시간소인 날짜 부분과 시간 부분, 소수점 이하 6자리까지 초를 저장합니다. 범위는 1월 1일 0001 00:00:00.000000 - 12월 31일 9999 23:59:59.999999. 디스크 사용량은 8바이트입니다.
8 varchar 가변 길이, 최대 64,000자까지 입력할 수 있습니다. 공백 패딩이 없으며 입력한 대로 데이터가 저장됩니다. 길이가 n인 바이트 문자열의 경우 디스크 사용량은 n + 2바이트 이하입니다.
9 nvarchar 최대 길이가 16,000자인 가변 길이 유니코드 데이터입니다. UTF-8 인코딩을 사용하면 각 유니코드 코드 포인트에 1~4바이트의 저장 공간이 필요합니다. 따라서 10자 문자열의 경우 ASCII인 경우 10바이트, 라틴어인 경우 최대 20바이트, 순수 한자인 경우 최대 40바이트(일반적으로 30바이트)의 저장 용량이 필요합니다.
1,000만 플로트(스위치일 경우) 정밀도 1 - 15의 부동 소수점 숫자입니다. 6보다 작은 정밀도는 4바이트를 사용합니다. 7~15의 정밀도는 8바이트를 사용합니다.
11 이중 실선 8바이트를 사용하여 정밀도 15의 float에 해당하는 값입니다.
15 timetz 6자릿수의 시간, 분, 초이며, GMT를 기준으로 하는 시간대입니다.

반환

이 함수는 지정된 유형의 배열을 생성합니다.

다음 예를 고려하십시오.
create table array_t(col1 int,col2 varchar(100));
CREATE TABLE
다음 INSERT 쿼리는 int2 타입의 배열을 생성하여 테이블에 저장합니다:
insert into array_t values(1,array(2));
INSERT 0 1
다음 쿼리는 배열이 생성되어 array_t 테이블에 저장되었음을 보여줍니다:
select * from array_t;
 col1 | col2 
------+------
    1 | ARR
(1 row)