亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

hive數(shù)據(jù)倉(cāng)庫(kù)新增字段方法

 更新時(shí)間:2022年06月23日 14:40:35   作者:大大大大肉包  
這篇文章主要為大家介紹了hive中新增字段的方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

新增字段

1、方法1

alter table 表名 add columns (列名 string COMMENT '新添加的列') CASCADE;
alter table 表名 add columns (列名 string COMMENT '新添加的列');
hive表中指定位置增加一個(gè)字段
分兩步,先添加字段到最后(add columns),然后再移動(dòng)到指定位置(change)
alter table 表名 add columns (列名 string comment '當(dāng)前時(shí)間'); -- 正確,添加在最后
alter table 表名 change 列名 string after 指定位置的列名; -- 正確,移動(dòng)到指定位置,address字段的后面

添加之后字段由于hive底層是文件和系列化的設(shè)計(jì),因此查數(shù)據(jù)會(huì)發(fā)現(xiàn)新增的列在所有已有列的后面

CASCADE會(huì)刷歷史分區(qū)字段

cascade知識(shí)

  • cascade的中文翻譯為“級(jí)聯(lián)”,也就是不僅變更新分區(qū)的表結(jié)構(gòu)(metadata),同時(shí)也變更舊分區(qū)的表結(jié)構(gòu)。
  • 對(duì)于刪除操作也是,級(jí)聯(lián)刪除表中的信息,當(dāng)表A中的字段引用了表B中的字段時(shí),一旦刪除B中該字段的信息,表A的信息也自動(dòng)刪除。(當(dāng)父表的信息刪除,子表的信息也自動(dòng)刪除)
  • 標(biāo)準(zhǔn)語(yǔ)法如下:

2、方法2 (適用于外部表)

當(dāng)分區(qū)過(guò)多的情況下,直接使用alter就行增加字段會(huì)報(bào)錯(cuò)

第一步:刪除分區(qū) ,當(dāng)分區(qū)過(guò)多可以寫(xiě)個(gè)for循環(huán)

alter table table_name drop if exists partition(par_col=col_name)

第二步:使用alter操作就行添加字段,這時(shí)候就不會(huì)因?yàn)榉謪^(qū)過(guò)多報(bào)錯(cuò)

第三步:進(jìn)行修復(fù)分區(qū)

msck repair table 表名;

3、方法3(下下策)

創(chuàng)建新表修改表名,進(jìn)行存儲(chǔ)原表數(shù)據(jù)

將原表進(jìn)行drop,再對(duì)新表進(jìn)行改名操作

ALTER TABLE old_name RENAME TO new_name;

修改字段

alter table table_name change column 已有列 修改名稱 類型 comment '';

刪除列

Hive不能直接刪除列,不然底層系列化就亂了,我們可以通過(guò)replace語(yǔ)句來(lái)替換整張表的字段,達(dá)到同樣的效果

alter table table_name replace columns(column_1 string);

語(yǔ)句中只寫(xiě)想要保留的字段就可以

以上就是hive中新增字段方法的詳細(xì)內(nèi)容,更多關(guān)于hive新增字段的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論