¾�ΥС�������ʸ�� �� 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

Chapter 8. �Ѿ�

2�ĤΥơ��֥���äƤߤޤ��礦��capitals �Ȥ����ơ��֥���ݻ�����뽣�Ԥϡ��ԡ�cities�ˤǤ⤢��ޤ���capitals �ơ��֥�� cities �ơ��֥뤫��Ѿ������٤����Ȥ����Τ�������ή��Ǥ��礦��

CREATE TABLE cities (
    name            text,
    population      float,
    altitude        int     -- (in ft)
);

CREATE TABLE capitals (
    state           char(2)
) INHERITS (cities);

���ξ�硢capitals�ιԤϤ��٤Ƥ�°��(name��̾���ˡ�population�ʿ͸��ˡ�altitude�ʹ��١�)��ƥơ��֥�� cities ���� �Ѿ� ���ޤ���name°���η��� PostgreSQL ��ͭ�β���Ĺ ASCII ʸ����Ǥ��� text ���Ǥ���population°���η��� PostgreSQL��ͭ����������ư���������Ѥ� float ���Ǥ������ԤˤϤ���ˡ�state �Ȥ������򼨤�°�����ɲä���ޤ��� PostgreSQL�Ǥϡ��ơ��֥�� 0 �İʾ�Υơ��֥뤫��Ѿ����뤳�Ȥ��Ǥ����䤤��碌�ϥơ��֥�Τ��٤ƤιԤ򻲾Ȥ��뤳�Ȥ⡢�ơ��֥�Ȥ��λ�¹���٤ƤιԤ򻲾Ȥ��뤳�Ȥ��ǽ�Ǥ���

Note: �Ѿ��γ��ؤ���۴�ͭ������դǤ���

���Ȥ��С������䤤��碌�ϡ����Ԥ�ޤࡢ���٤�500�ե����Ȱʾ�ˤ��뤹�٤ƤλԤ򸫤Ĥ��ޤ���

SELECT name, altitude
    FROM cities
    WHERE altitude > 500;

���η�̤ϰʲ��Τ褦�ˤʤ�ޤ���

+----------+----------+
|name      | altitude |
+----------+----------+
|Las Vegas | 2174     |
+----------+----------+
|Mariposa  | 1953     |
+----------+----------+
|Madison   | 845      |
+----------+----------+

�����������䤤��碌�ϡ����٤� 500�ե����Ȱʾ�ˤ��꽣�ԤǤϤʤ����٤ƤλԤ򸫤Ĥ��ޤ���

SELECT name, altitude
    FROM ONLY cities
    WHERE altitude > 500;

+----------+----------+
|name      | altitude |
+----------+----------+
|Las Vegas | 2174     |
+----------+----------+
|Mariposa  | 1953     |
+----------+----------+

�����ǡ�cities ������ "ONLY" �ϡ������䤤��碌�� cities �Τߤ��оݤȤ���cities ��Ѿ������ơ��֥���оݳ��Ȥ��ʤ���Фʤ�ʤ����Ȥ�ɽ���ޤ�������ޤǤ���������¿���Υ��ޥ�ɡ�SELECT�� UPDATE �� DELETE �ϡ����� "ONLY" �Ȥ�����ʸ�򥵥ݡ��Ȥ��Ƥ��ޤ���

���ˤ�äƤϡ���������Υ��ץ뤬�ɤΥơ��֥뤫�餭����Τ��Τꤿ���Ȥ������Ȥ����뤫�⤷��ޤ��󡣤��줾��Υơ��֥�ˤ� "TABLEOID" �Ȥ��������ˤʤä��ơ��֥�򼨤������ƥ��󤬤���ޤ���

    SELECT c.tableoid, c.name, c.altitude
    FROM cities c
    WHERE c.altitude > 500;

���η�̤ϰʲ��Τ褦�ˤʤ�ޤ���

+---------+----------+----------+
|tableoid |name      | altitude |
+---------+----------+----------+
|37292    |Las Vegas | 2174     |
+---------+----------+----------+
|37280    |Mariposa  | 1953     |
+---------+----------+----------+
|37280    |Madison   | 845      |
+---------+----------+----------+

pg_class �ȷ�礹�뤳�Ȥǡ��ơ��֥�μºݤ�̾����Ƚ��ޤ���

    SELECT p.relname, c.name, c.altitude
    FROM cities c, pg_class p
    WHERE c.altitude > 500 and c.tableoid = p.oid;

���η�̤ϰʲ��Τ褦�ˤʤ�ޤ���

+---------+----------+----------+
|relname  |name      | altitude |
+---------+----------+----------+
|capitals |Las Vegas | 2174     |
+---------+----------+----------+
|cities   |Mariposa  | 1953     |
+---------+----------+----------+
|cities   |Madison   | 845      |
+---------+----------+----------+

�����Τ���˻����ѹ����줿��ʬ: PostgreSQL �ΰ����ΥС������Ǥϡ��ǥե���ȤǤϻҥơ��֥�˥����������뤳�Ȥ��Ǥ��ޤ���Ǥ���������ϴְ㤤�Τ�Ȥǡ��ޤ� SQL99 �˰�ȿ���Ƥ��ޤ������Ť���ʸ�Ǥϡ����֥ơ��֥�����뤿��ˤ� * ��ơ��֥�̾���ղä��Ƥ��ޤ��������Ȥ��в����Τ褦�ˤʤ�ޤ���

SELECT * from cities*;

���ߤǤ� * ���ղä��뤳�Ȥǻҥơ��֥�Υ����������Τ˻��ꤷ���ꡢ"ONLY" ��񤯤��Ȥǻҥơ��֥�򥹥���󤷤ʤ����Ȥ����Τˤ��뤳�Ȥ��Ǥ��ޤ����������С������ 7.1 ����ϡ�������ꤵ��Ƥ��ʤ��ơ��֥�̾�Υǥե����ư��Ǥϻҥơ��֥�⥹����󤷤ޤ����դˡ������Υǥե���ȤϤ������ʤ����ȤǤ����������Υǥե����ư��Ǻ�Ȥ򤷤����������ꥪ�ץ���� SQL_Inheritance ��off�ˤ��Ʋ��������ʲ�����򼨤��ޤ���

SET SQL_Inheritance TO OFF;

�ޤ��ϡ�postgresql.conf ��1���ɲä��Ʋ�������

�Ѿ���ǽ�����¤Ȥ��ơ�(����������ޤ�)����ǥå���������ӡ����������ϡ����Υơ��֥�Τߤ�Ŭ�Ѥ��졢�����Ѿ������ҥơ��֥�ˤ�Ŭ�Ѥ���ʤ����Ȥ�����ޤ������äơ������ǡ�¾�Υơ��֥����� REFERENCES cities(name) ����ꤹ��ȡ����Υơ��֥�ϻԤ�̾������Ĥ��ȤϤǤ��ޤ��������Ԥ�̾������Ĥ��ȤϤǤ��ޤ��󡣤��η�٤Ͼ���Υ�꡼���Ǥ����餯��������ޤ���