我们熟知的hive支持插入数据的方式有两种,覆盖写入insert overwrite和增量写入insert into。常见数据获取方式有两种(1)文件导入load data (local) inpath…(2)查询导入 insert overwrite/into table select * from table1…
但是,hive支不支持直接插如自定义数据呢,有没有类似sql类数据库的“insert into table1 values (‘sss’,‘sss’,…)”这样的写法呢?
答案是因版本而异,在早一点的版本里,hive 并不支持事务和行级更新,也就是说,你不能单独插入某一行数据或者单独删除某一行数据。而自从hive0.14版本开始,通过配置支持事务可以实现hive的行级更新。
直接敲语句insert into table tablename1 values (‘R3700’,‘aaaa’);即可,注意要用单引号括住string类型的数据,而不能用双引号括住,否则报错。
如果你想插入多行,直接在后面加就行了:
insert into table tablename1 values (‘R3700’,‘aaaa’),(‘xxxxx’,‘xxxx’),(‘xxxx’,‘xxxx’)…;