ann
          冰是沒有未來的,因為它的永恒
          posts - 107,comments - 34,trackbacks - 0
             CREATE INDEX 在指定的表上構造一個名為 index_name 的索引。索引主要用來提高數據庫性能。但是如果不恰當的使用將導致性能的下降。

             PostgreSQL 為從索引提供 B-tree,R-tree,hash(散列) 和 GiST 索引方法。 B-tree 索引方法是一個 Lehman-Yao 高并發 B-trees 的實 現。R-tree 索引方法用 Guttman 的二次分裂算法實現了標準的 R-trees。 hash(散列)索引方法是 Litwin 的線性散列的一個實現。 用戶也可以定義它們自己的索引方法,但這個工作相當復雜。

             如果出現了 WHERE 子句,則創建一個部分索引。 部分索引是一個只包含表的一部分記錄的索引,通常是該表中比其它部分數據更有用的部分。

             在 WHERE 子句里用的表達式只能引用下層表的字段,但是它可以使用所有字段,而不僅僅是被索引的字段。 目前,子查詢和聚集表達式也不能出現在WHERE里。

             索引定義里的所有函數和操作符都必須是immutable,(不變的)也就是說, 它們的結果必須只能依賴于它們的輸入參數,而決不能依賴任何外部的影響(比如另外一個表的內容或者當前時間)。 這個約束確保該索引的行為是定義完整的。要在一個索引上使用用戶定義函數,請記住在你創建它的時候把它標記為immutable的函數。

             目前,只有 B-tree 和 gist 索引方法支持多字段索引。 缺省時最多可以聲明 32 個鍵字(這個限制可以在制作 PostgreSQL 時修改)。 目前只有 B-tree 支持唯一索引。

          可以為索引的每個列/字段聲明一個 操作符表。 操作符表標識將要被該索引用于該列/字段的操作符。 例如, 一個四字節整數的 B-tree 索引將使用 int4_ops 表; 這個操作符表包括四字節整數的比較函數。 實際上,該域的數據類型的缺省操作符表一般就足夠了。 某些數據類型有操作符表的原因是,它們可能有多于一個的有意義的順序。 例如,我們對復數類型排序時有可能以絕對值或者以實部。 我們可以通過為該數據類型定義兩個操作符表,然后在建立索引的時候選擇合適的表來實現。


          http://www.postgresql.org/docs/8.4/interactive/index.html


          posted on 2009-12-22 10:00 冰是沒有未來的,因為它的永恒 閱讀(446) 評論(0)  編輯  收藏 所屬分類: postges database

          當下,把心放下 放下如果是可能的,那一定是在當下,
          不在過去,也不在未來。
          當下放下。唯有活在當下,你的問題才能放下。

          主站蜘蛛池模板: 宜君县| 康马县| 米泉市| 水城县| 乐清市| 杭州市| 宣汉县| 类乌齐县| 克什克腾旗| 三门峡市| 贵港市| 汶上县| 乌拉特前旗| 鄂伦春自治旗| 苏尼特左旗| 阜新市| 西林县| 曲松县| 双桥区| 东港市| 体育| 浦东新区| 中宁县| 来安县| 蓬安县| 米泉市| 新民市| 龙泉市| 南雄市| 华阴市| 河曲县| 陵川县| 彰武县| 正蓝旗| 佳木斯市| 海伦市| 南和县| 哈巴河县| 西盟| 关岭| 宕昌县|