| 포스트그레SQL | ||
|---|---|---|
| 이전 | 다음 | |
참고:이것은 배열 동작에 관한 장이어야 합니다. 자원봉사자? - 토마스 1998-01-12
Postgres는 인스턴스의 속성을 다음과 같이 정의할 수 있습니다. 고정 길이 또는 가변 길이 다차원 배열. 배열 모든 기본 유형 또는 사용자 정의 유형을 생성할 수 있습니다. 설명하기 이를 사용하려면 먼저 기본 유형의 배열로 클래스를 만듭니다.
테이블 스포츠 토토 사이트 생성(
이름 텍스트,
pay_by_quarter int4[],
일정 char16[][]
);
위 쿼리는 다음과 함께 SAL_EMP라는 클래스를 생성합니다.텍스트문자열(이름), 1차원 배열int4(pay_by_quarter), 이는 직원의 급여를 분기별 및 2차원으로 나타냅니다. 배열문자16(일정), 이는 직원의 주간 일정을 나타냅니다. 이제 좀 해보겠습니다삽입s; 배열에 추가할 때 우리는 값을 중괄호로 묶고 쉼표로 구분합니다. 만약에 아시죠C, 이는 구문과 다르지 않습니다. 구조 초기화를 위해.
SAL_EMP에 삽입
VALUES('빌',
'10000, 10000, 10000, 10000',
'"회의", "점심", ');
SAL_EMP에 삽입
VALUES('캐롤',
'20000, 25000, 25000, 25000',
'"대화", "상담", "회의"');기본적으로 Postgres는 "1 기반" 번호 매기기를 사용합니다.
배열에 대한 규칙 - 즉, n개의 요소로 구성된 배열이 시작됩니다.
배열[1]로 끝나고 배열[n]으로 끝납니다. 이제 몇 가지 쿼리를 실행할 수 있습니다.
스포츠 토토 사이트에 있습니다. 먼저, 단일 요소에 액세스하는 방법을 보여줍니다.
한 번에 배열합니다. 이 쿼리는 직원의 이름을 검색합니다.
2분기에 급여가 변경된 사람:이름 선택
스포츠 토토 사이트에서
WHERE 스포츠 토토 사이트.pay_by_quarter[1] <
스포츠 토토 사이트.pay_by_quarter[2];
+------+
|이름 |
+------+
|캐롤 |
+------+
이 쿼리는 모든 직원의 3분기 급여를 검색합니다:
스포츠 토토 사이트에서 스포츠 토토 사이트.pay_by_quarter[3] 선택; +---------------+ |pay_by_quarter | +---------------+ |10000 | +---------------+ |25000 | +---------------+
우리는 또한 배열의 임의의 조각 또는 하위 배열에 접근할 수 있습니다. 이 쿼리는 Bill의 일정에서 첫 번째 항목을 검색합니다. 한 주의 첫 이틀.
SELECT 스포츠 토토 사이트.일정[1:2][1:1]
스포츠 토토 사이트에서
WHERE 스포츠 토토 사이트.name = '빌';
+------+
|일정 |
+------+
|"회의","" |
+------+
| 이전 | 집 | 다음 |
| 기능 | 위로 | 상속 |