이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

5.2. 비토토 커뮤니티 값

관계형 모델의 원칙 중 하나는 열이 테이블은 토토 커뮤니티적입니다.포스트그레이 제한이 없습니다. 열 자체에는 다음이 포함될 수 있습니다. 쿼리 언어에서 액세스할 수 있는 하위 값입니다. 에 대한 예를 들어 기본 배열인 열을 만들 수 있습니다. 유형.

5.2.1. 토토 커뮤니티

포스트그레다음 열을 허용합니다. 고정 길이 또는 가변 길이로 정의할 행 다차원 배열. 모든 기본 유형의 배열 또는 사용자 정의 유형을 생성할 수 있습니다. 그 사용법을 설명하기 위해 우리는 먼저 기본 유형의 배열로 테이블을 만듭니다.

테이블 SAL_EMP 생성(
    이름 텍스트,
    pay_by_quarter 정수[],
    일정 텍스트[][]
);

위 쿼리는 다음을 포함하는 SAL_EMP라는 테이블을 생성합니다.텍스트문자열(이름), 1차원 토토 커뮤니티정수(분기별 지불), 이는 직원의 급여를 분기별로 나타냅니다. 의 2차원 토토 커뮤니티텍스트(일정), 직원의 주간 일정을 나타냅니다. 이제 좀 해보겠습니다.삽입s; 언제 토토 커뮤니티에 추가하면 값을 중괄호로 묶고 쉼표로 구분하세요. 알고 계시다면C, 이는 다음 구문과 다르지 않습니다. 구조를 초기화하는 중입니다.

SAL_EMP에 삽입
    VALUES('빌',
    '10000, 10000, 10000, 10000',
    '"회의", "점심", ');

SAL_EMP에 삽입
    VALUES('캐롤',
    '20000, 25000, 25000, 25000',
    '"대화", "상담", "회의"');
기본적으로,포스트그레사용 토토 커뮤니티에 대한 "1부터 시작하는" 번호 매기기 규칙입니다. n개 요소로 구성된 토토 커뮤니티은 array[1]로 시작하고 array[n]으로 끝납니다. 이제 SAL_EMP에 대해 몇 가지 쿼리를 실행할 수 있습니다. 먼저, 방법을 보여드리겠습니다. 한 번에 토토 커뮤니티의 단일 요소에 액세스합니다. 이 쿼리는 검색합니다 2분기에 급여가 변경된 직원의 이름:
이름 선택
    SAL_EMP에서
    WHERE SAL_EMP.pay_by_quarter[1] <
    SAL_EMP.pay_by_quarter[2];

+------+
|이름 |
+------+
|캐롤 |
+------+

이 쿼리는 모든 직원의 3분기 급여를 검색합니다. 직원:

SAL_EMP에서 SAL_EMP.pay_by_quarter[3] 선택;

+---------------+
|pay_by_quarter |
+---------------+
|10000 |
+---------------+
|25000 |
+---------------+

우리는 또한 임의의 토토 커뮤니티 조각(하위 토토 커뮤니티)에 접근할 수 있습니다 각 첨자에 대해 하한과 상한을 모두 지정합니다. 이 쿼리는 Bill의 일정에서 첫 번째 항목을 검색합니다. 한 주의 첫 이틀.

SELECT SAL_EMP.일정[1:2][1:1]
    SAL_EMP에서
    WHERE SAL_EMP.name = '빌';

+------+
|일정 |
+------+
|"회의","" |
+------+