Hive初接触

产生了兴趣就要持之以恒。

将数据文件导入到Hive表中。

LOAD DATA [LOCAL] INPATH '/data/userdata' [OVERWRITE] INTO TABLE user;

使用LOCAL选项将使用本地文件系统,否则将使用hdfs文件系统。使用OVERWRITE选项将删除原来table中的数据,否则将新数据添加到文件末尾


Loaddata导入数据将仅仅将文件拷贝到hive管理的目录下,并用table的元数据去解释这个文件。所以必须保证数据文件的结构必须和table的结构一致,否则可以loaddata成功但是数据解释不正确。特别注意fields分隔符和lines分隔符要和Table一致。



查询语句。这里列出一些和标准SQL不同的地方。

不能使用select count(*);需要指定count的列下标,select count(1)

不能使用CREATE TABLE newtable SELECT * FROM user;必须事先Create table,再用INSERT向其中写入数据。

排序关键字是SORT BY。

LIMIT关键字只能跟一个数字,即从第一条记录开始选出若干条。

INSERT语句变换很大,不能直接插入一条记录。插入的数据必须用SELECT子查询获取或者从某个文件导入。

> SELECT * FROM user LIMIT 10;

> INSERT OVERWRITE TABLE foo SELECT DESTIN(id) FROM user;

> SELECT M.id FROM user M JOIN foo S ON M.id = S.id;

> SELECT id FROM user GROUP BY id;










你可能感兴趣的:(JOIN,sql,user,table,insert)