基本語法:
refer:alter table name rename to new_name
(alter table name add columns
(col_spec
[,col_spec
...])
alter table name drop
[column
]column_name
alter table name change column_name new_name new_type
alter table name replace columns
(col_spec
[,col_spec
...])
col_spec
[,col_spec
...])
alter table name drop
[column
]column_name
alter table name change column_name new_name new_type
alter table name replace columns
(col_spec
[,col_spec
...])
自己實驗:
1. alter table d_extra.dm_usr_mxdai_risk_analysisaddcolumns(test1 int, test2 int); ------works
desc d_extra.dm_usr_mxdai_risk_analysis;
可以看出新字段已經新增成功
1.1. alter table d_extra.dm_usr_mxdai_risk_analysisaddcolumn test1 int; ------doesn't work
2. alter table d_extra.dm_usr_mxdai_risk_analysisdropcolumn test1; -----doesn't work
報錯:error: error while compiling statement: failed: parseexception line 1:52 mismatched input 'column' expecting partition near 'drop' in drop partition statement (state=42000,code=40000)
是不是只能drop partition 而不能drop column??
3. alter table d_extra.dm_usr_mxdai_risk_analysischangetest1 risk_1_138 string; ------works
hive不支援行級插入操作、更新操作和刪除操作。
eg1. delete from tmp.pid_free_2_paid_ana_time where pre_free_pack_id = 104
報錯eg2. truncate
delect:用於刪除特定行條件,你可以從給定表中刪除所有的行????
truncate:truncate用於刪除所有的行,這個行為在hive元儲存刪除資料是不可逆的
drop:刪除hive中的表
truncate 不能刪除外部表!因為外部表裡的資料並不是存放在hive meta store中
truncate:
truncate table table_name;
例子:truncate table employees;
ref:
hive增改刪字段
1 修改欄位名方法 alter table 表名 change 舊欄位 新字段 型別 2 新增字段 use mart flow test alter table detail flow test add columns original union id string 或者 alter table ...
oracle批量為表增刪字段
create or replace procedure add column as declare在oracle中指代的是 塊 用於處理一段業務邏輯的 declare 動態表表名字首 tbl name prefix nvarchar2 255 表名 tbl name nvarchar2 255 欄位...
SQL之表的增 改 刪
在說明表的增改刪之前,我們先來介紹一下組成乙個關係型資料庫的基本結構。由圖1 2可以看出乙個關係型資料庫主要由三大結構組成,分別是資料庫 表 字段。在頂層的是rdbms 管理資料庫的軟體 在rdbms之下是建立的實際資料庫,每個資料庫又可以包含乙個或多個表,嚴格地說資料庫可以不包含表,但這樣的資料庫...