2025년 9월 25일:토토 커뮤니티 : 토토
이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.스포츠 토토 베트맨 : 문서 : 17 : 3.6. 계승버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

3.6. 상속

상속은 객체 지향 데이터베이스의 개념입니다. 이는 데이터베이스 설계의 흥미롭고 새로운 가능성을 열어줍니다.

두 개의 테이블을 생성합시다: 테이블도시그리고 테이블대문자. 당연히 수도도 도시이므로 모든 도시를 나열할 때 수도를 암시적으로 표시할 수 있는 방법이 필요합니다. 당신이 정말로 영리하다면 다음과 같은 계획을 고안할 수도 있습니다.

테이블 대문자 생성(
  이름 텍스트,
  실제 인구,
  고도 int, -- (피트 단위)
  상태 문자(2)
);

CREATE TABLE non_capitals(
  이름 텍스트,
  실제 인구,
  고도 int -- (피트 단위)
);

AS 보기 도시 만들기
  SELECT 이름, 인구, 고도 FROM 대문자
    유니온
  non_capitals에서 이름, 인구, 고도를 선택하세요.

이것은 쿼리가 진행되는 한 잘 작동하지만, 우선 여러 행을 업데이트해야 할 때 보기 흉해집니다.

더 나은 해결책은 다음과 같습니다.

테이블 도시 생성(
  이름 텍스트,
  실제 인구,
  고도 int -- (피트 단위)
);

CREATE TABLE 대문자(
  상태 문자(2) UNIQUE NOT NULL
) 상속(도시);

이 경우, 행대문자 상속모든 열(이름, 인구고도) 그에서부모, 도시. 열의 유형이름is텍스트, 원주민포스트그레SQL12505_12556대문자테이블에 추가 열이 있습니다.상태, 상태 약어를 표시합니다. 에서포스트그레SQL, 테이블은 0개 이상의 다른 테이블에서 상속될 수 있습니다.

예를 들어, 다음 쿼리는 주도를 포함하여 해발 500피트 이상에 위치한 모든 도시의 이름을 찾습니다.

SELECT 이름, 고도
  도시에서
  고도  500;

반환:

이름 | 고도
---------+------------
 라스베가스 |      2174
 마리포사 |      1953년
 매디슨 |       845
(3행)

반면에 다음 쿼리는 주도가 아니고 고도가 500피트 이상인 모든 도시를 찾습니다.

SELECT 이름, 고도
    도시에서만
    고도  500;
이름 | 고도
---------+------------
 라스베가스 |      2174
 마리포사 |      1953년
(2행)

여기는이전도시쿼리는 다음에 대해서만 실행되어야 함을 나타냅니다.도시테이블, 아래 테이블 아님도시상속 계층에서. 우리가 이미 논의한 많은 명령 —선택, 업데이트삭제— 이것을 지원하세요표기법.

참고

상속은 유용한 경우가 많지만 고유 제약 조건이나 외래 키와 통합되지 않아 유용성이 제한됩니다. 참조와이즈 토토 PostgreSQL : 문서 : 11 : 5.9. 계승자세한 내용은.