사용의 기본 사항을 다뤘습니다.포스트그레 SQL에 귀하의 데이터에 액세스하려면 이제 해당 토토 사이트에 대해 논의하겠습니다.포스트그레스그것과 구별되는 것은 기존 데이터 관리자. 이러한 기능에는 상속, 시간 여행 및 비원자 데이터 값(배열 및 집합 값 속성). 이 섹션의 예는 다음에서도 찾을 수 있습니다.advance.sql튜토리얼 디렉토리에 있습니다. (참조PostgreSQL : 문서 : 6.5 : 윈 토토 언어사용 방법 그것.)
두 개의 클래스를 생성합시다. Capitals 클래스에는 상태가 포함되어 있습니다. 도시이기도 한 수도. 당연하게도 캐피탈 클래스는 도시에서 상속받아야 합니다.
테이블 도시 생성(
이름 텍스트,
인구 부동,
고도 int -- (피트 단위)
);
CREATE TABLE 대문자(
상태 char2
) 상속(도시);이 경우 대문자의 인스턴스상속모든 속성(이름, 인구 및
고도)를 상위 도시로부터 가져옵니다. 속성 이름의 유형
이다텍스트, 원주민포스트그레스가변 길이 ASCII용 유형
문자열. 속성 채우기 유형은 다음과 같습니다.플로트, 원주민포스트그레스배정밀도 부동용 유형
포인트 번호. 주 수도에는 주라는 추가 속성이 있습니다.
그들의 상태를 보여줍니다. 에서포스트그레,
클래스는 0개 이상의 다른 클래스에서 상속할 수 있으며 쿼리는
클래스의 모든 인스턴스 또는 클래스의 모든 인스턴스를 참조합니다.
클래스와 그 모든 하위 항목을 포함합니다.예를 들어, 다음 쿼리는 모든 도시를 찾습니다. 500피트 이상의 고도에 위치한 경우:참고:상속 계층은 방향성 비순환입니다. 그래프.
SELECT 이름, 고도
도시에서
고도 500인 곳;
+---------+----------+
|이름 | 고도 |
+---------+----------+
|라스베가스 | 2174 |
+---------+----------+
|마리포사 | 1953년 |
+---------+----------+
한편, 다음을 포함한 모든 도시의 이름을 찾으려면 해발 500피트가 넘는 고도에 위치한 주도 쿼리는 다음과 같습니다:
SELECT c.이름, c.고도
도시에서* c
c.altitude 500;반환:+------------+----------+ |이름 | 고도 | +---------+----------+ |라스베가스 | 2174 | +---------+----------+ |마리포사 | 1953년 | +---------+----------+ |매디슨 | 845 | +---------+----------+여기서 도시 뒤의 "*"는 쿼리가 다음과 같아야 함을 나타냅니다. 도시와 도시 아래의 모든 계층을 상속 재산으로 운영합니다. 계층 구조. 우리가 이미 논의한 많은 명령 (선택, 업데이트그리고삭제)은 다음과 같이 이 "*" 표기법을 지원합니다. 다른 사람, 같은변경.