个人认为Hive常用到的SQL命令

来源:互联网 发布:sql server 2008配置 编辑:程序博客网 时间:2024/04/25 01:29

为了更好的使用我们延云YDB产品需要了解很多跟hadoop相关的知识,为了更好的使用spark这里先了解了解hive常用的SQL跟大家分享下

1.创建表 hive> CREATE TABLE pokes (foo INT, bar STRING);

2.创建表并创建索引字段ds hive> CREATE TABLE invites (foo INT, bar STRING) PARTITIONED BY (ds STRING);

3. 按正条件(正则表达式)显示表, hive> SHOW TABLES '.*s';

4.表添加一列 hive> ALTER TABLE pokes ADD COLUMNS (new_col INT);

5.更改表名 hive> ALTER TABLE events RENAME TO 3koobecaf;

6.删除列 hive> DROP TABLE pokes;

7.将文件中的数据加载到表中 hive> LOAD DATA LOCAL INPATH './examples/files/kv1.txt' OVERWRITE INTO TABLE pokes;

8.加载本地数据,同时给定分区信息 hive> LOAD DATA LOCAL INPATH './examples/files/kv2.txt' OVERWRITE INTO TABLE invites PARTITION (ds='2008-08-15');

9. SQL 操作 按先件查询 hive> SELECT a.foo FROM invites a WHERE a.ds='<DATE>';

10.将查询数据输出至目录 hive> INSERT OVERWRITE DIRECTORY '/tmp/hdfs_out' SELECT a.* FROM invites a WHERE a.ds='<DATE>';

11.将查询结果输出至本地目录 hive> INSERT OVERWRITE LOCAL DIRECTORY '/tmp/local_out' SELECT a.* FROM pokes a;

12.将一个表的统计结果插入另一个表中 hive> FROM invites a INSERT OVERWRITE TABLE events SELECT a.bar, count(1) WHERE a.foo > 0 GROUP BY a.bar; hive> INSERT OVERWRITE TABLE events SELECT a.bar, count(1) FROM invites a WHERE a.foo > 0 GROUP BY a.bar; JOIN hive> FROM pokes t1 JOIN invites t2 ON (t1.bar = t2.bar) INSERT OVERWRITE TABLE events SELECT t1.bar, t1.foo, t2.foo;

1 0