假設有兩張表a和b,需要把a的值複製到b表上,一般的做法如下:
update b set value=(select a.value from a where a.id=b.id)
在vertica上執行這樣的update語句是很慢的,有乙個推薦的解決方案,是使用set using 和refresh_columns機制。具體如下
createtable
a ( id
int,
value
varchar(100
););
create
table
b ( id
int,
value
varchar(100) set using(select a.value from a where a.id=
b.id)
);select refresh_columns('
b', '
value
', '
rebuild
');
如果表有分割槽,執行 refresh_columns 的時候還可以加兩個引數,縮小重新整理分割槽值得範圍。
基於列的資料庫vertica
基於列的資料庫vertica 2009 12 07 17 43 最近在研究基於列儲存的資料庫,相對於傳統的基於行的資料庫,它更適合在資料倉儲儲存方面發揮特長。看了一些英文文件之後,將技術相關的語段記錄下來,其中也參雜著我的理解,因此比較凌亂。不過還是希望盡早拿出來與大家分享 1.基於列儲存的資料庫的...
基於列儲存的資料庫vertica
出處 最近在研究基於列儲存的資料庫,相對於傳統的基於行的資料庫,它更適合在資料倉儲儲存方面發揮特長。看了一些英文文件之後,將技術 1.基於列儲存的資料庫的優點 a 對於聚集操作,比如求sum,明顯基於列儲存的要比基於行儲存的快 b 對於update操作,不須接觸其他列值 c 基於行儲存的資料庫在查詢...
ArcMap 使用python更新列中的值
概述 在外文網上,很多人都問在arcmap中如何通過sql修改屬性欄位的值,我見回答的人都說通過 field calculator 貌似不能直接通過sql語句.雖然學gis開發,但是還是第一次碰python,有點程式設計經驗,所以感覺還是很容易入門的.步驟 1,首先在attribute table中...