상속은 객체 지향 데이터베이스의 개념입니다. 그것 데이터베이스 설계의 흥미롭고 새로운 가능성을 열어줍니다.
두 개의 테이블을 생성합시다: 테이블도시그리고 테이블대문자. 당연히 수도도 도시이고,
그래서 당신은 목록을 작성할 때 암시적으로 대문자를 표시할 수 있는 방법을 원합니다.
모든 도시. 당신이 정말로 영리하다면 어떤 계획을 세울 수도 있습니다.
이렇게:
테이블 대문자 생성(
이름 텍스트,
실제 인구,
고도 int, -- (피트 단위)
상태 문자(2)
);
CREATE TABLE non_capitals(
이름 텍스트,
실제 인구,
고도 int -- (피트 단위)
);
AS 보기 도시 만들기
SELECT 이름, 인구, 고도 FROM 대문자
유니온
non_capitals에서 이름, 인구, 고도를 선택하세요.
이것은 쿼리가 진행되는 한 잘 작동하지만 다음과 같은 경우 보기 흉해집니다. 우선 여러 행을 업데이트해야 합니다.
더 나은 해결책은 다음과 같습니다:
테이블 도시 생성( 이름 텍스트, 실제 인구, 고도 int -- (피트 단위) ); CREATE TABLE 대문자( 상태 문자(2) ) 상속(도시);
이 경우, 한 행대문자
상속모든 열(이름, 인구,
그리고고도) 그에서부모, 도시. 는
열 유형이름is텍스트, 원주민범퍼카 토토가변 길이 문자 유형
문자열. 주 수도에는 추가 열이 있습니다.상태, 상태를 보여줍니다. 에서범퍼카 토토, 테이블은 0 또는
다른 테이블도 더 있어요.
예를 들어, 다음 쿼리는 모든 도시의 이름을 찾습니다. 500도 이상의 고도에 위치한 주도를 포함하여 피트:
SELECT 이름, 고도 도시에서 고도 500;
반환:
이름 | 고도 ---------+---------- 라스베가스 | 2174 마리포사 | 1953년 매디슨 | 845 (3행)
반면에 다음 쿼리는 다음 쿼리가 해당하는 모든 도시를 찾습니다. 주의 주도가 아니며 고도 500피트에 위치해 있습니다. 이상:
SELECT 이름, 고도
도시에서만
고도 500;
이름 | 고도 ---------+---------- 라스베가스 | 2174 마리포사 | 1953년 (2행)
여기는만이전도시쿼리가 실행되어야 함을 나타냅니다.
오직도시테이블이 아니고
아래 표도시안에
상속 계층. 우리가 이미 가지고 있는 많은 명령
논의됨 —선택, 업데이트및삭제—
이것을 지지하다만표기법.
참고:상속은 종종 유용하지만 고유 제약 조건이나 외래 키와 통합되지 않았습니다. 그 유용성을 제한합니다. 참조무지개 토토 PostgreSQL : 문서 : 9.3 : 상속자세한 내용은.
| 이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
| 창 기능 | 위로 | 결론 |