国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > PostgreSQL > 正文

PostgreSQL7.0手冊-用戶手冊-9. 繼承

2019-09-08 23:33:12
字體:
來源:轉載
供稿:網友
第九章. 繼承
讓我們創建兩個表.表 capitals 包含各州的首府,同時也是cities表.自然而然,表 capitals 應該從 表 cities 繼承下來. 
CREATE TABLE cities (
    name            text,
    population      float,
    altitude        int     -- (in ft)
);

CREATE TABLE capitals (
    state           char(2)
) INHERITS (cities);
在本例中,一條 capitals 的記錄 繼承 所有父表 cities 的字段(name,population,和 altitude). 字段 name 的類型是 text,Postgres用于變長ASCII字符串的本機類型.字段 population 的類型是 float, Postgres 用于雙精度浮點數的類型.表 capitals 多一個字段,state,表明首府所在的州.在Postgres里,一個表可以從0到多個其他表繼承下來,一個查詢可以檢索一個表的所有記錄,或是檢索該表和其所有后代的記錄. 
注意:繼承實際上是分級的不閉合的層次關系。(The inheritance hierarchy is a actually a directed acyclic graph.)
例如,下面查詢將找出所有海拔500英尺及以上的城市: 
SELECT name, altitude
    FROM cities
    WHERE altitude > 500;

   name    | altitude
-----------+----------
 Las Vegas |     2174
 Mariposa  |     1953
(2 rows)
另一方面,如果要找出包括州首府在內的所有海拔超過500英尺的城市,查詢應該是這樣的: 
SELECT c.name, c.altitude
    FROM cities* c
    WHERE c.altitude > 500;
返回: 
   name    | altitude
-----------+----------
 Las Vegas |     2174
 Mariposa  |     1953
 Madison   |      845
在這里citics后的“*” 表明該查詢應該遍歷所有繼承級別低于citics的表.許多我們已經討論過的命令 -- SELECT,UPDATE 和 DELETE 等和其他象 ALTER TABLE 這樣的命令都支持“*”(譯注:像命令行中的通配符 "*")?!?

--------------------------------------------------------------------------------
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 惠来县| 古交市| 开江县| 高淳县| 苍山县| 泗洪县| 探索| 沙坪坝区| 谷城县| 吉安县| 织金县| 余姚市| 龙井市| 万年县| 文昌市| 新兴县| 中方县| 嘉鱼县| 乐山市| 綦江县| 闻喜县| 措勤县| 丹阳市| 定远县| 宁阳县| 阆中市| 普兰县| 罗源县| 略阳县| 霸州市| 盐城市| 邓州市| 漯河市| 梁山县| 浠水县| 曲阳县| 鹤壁市| 江口县| 定西市| 朝阳县| 鱼台县|