创建数据库

CREATE DATABASE IF NOT EXISTS database_name;

查看所有数据库

show databases

删除数据库

DROP DATABASE IF EXISTS sample_database;

进入数据库

use dbname

创建表

CREATE TABLE IF NOT EXISTS test.student

(name STRING, age INT, contact INT );

查看所有表

show tables

/指定HDFS路径建库

为了在HDFS文件系统中创建数据库,需要指定要创建数据库的位置,如下所示。

CREATE DATABASE IF NOT EXISTS database_name LOCATION hdfs_path;

实测会报无权限

CREATE DATABASE IF NOT EXISTS hdfstest LOCATION "/db/hdfstest";

改个有权限的目录即可:

CREATE DATABASE IF NOT EXISTS hdfstest LOCATION "/user/impala/db/hdfstest";

注:通过hadoop fs -ls /user类似命令找到有权限的目录

建表后会在hdfs数据库目录下创建表的目录

插入数据后数据会存在表目录中。

insert

create table employee (Id INT, name STRING, age INT,address STRING, salary BIGINT);

insert into employee (ID,NAME,AGE,ADDRESS,SALARY)VALUES (1, 'Ramesh', 32, 'Ahmedabad', 20000 );

///查询

select * from employee

排序

select id,name,age,address,salary from employee order by id

select * from employee order by salary desc nulls last

select * from table_name ORDER BY col_name [ASC|DESC] [NULLS FIRST|NULLS LAST]

可以使用关键字ASC或DESC分别按升序或降序排列表中的数据。

以同样的方式,如果我们使用NULLS FIRST,表中的所有空值都排列在顶行; 如果我们使用NULLS LAST,包含空值的行将最后排列。

分组查询

select name,sum(salary) from employee group by name

select name,sum(salary) from employee group by name having sum(salary)>20000

翻页查询

select * from employee order by id limit 2 offset 2

///union

select * from employee order by id limit 2

union

select * from employee order by id limit 4

select * from employee order by id limit 2

union all

select * from employee order by id limit 4

with

with x as (select 1), y as (select 2) (select * from x union y);

with t1 as (select * from employee where age>30),

t2 as (select * from employee where age>25)

(select * from t1 union all select * from t2);

distinct

select distinct id,name from employee;

/覆盖插入(表的所有数据都被删除)

Insert overwrite employee values (1, 'Ram', 26,

'Vishakhapatnam', 37000 )

///获取表的描述(表结构)

describe employee

改表名

ALTER TABLE [old_db_name.]old_table_name RENAME TO [new_db_name.]new_table_name

ALTER TABLE hdfstest.employee RENAME TO hdfstest.users;

/添加列

ALTER TABLE users ADD COLUMNS (account_no BIGINT, phone_no BIGINT);

删除列

ALTER TABLE users DROP account_no;

/更改列名和类型

ALTER TABLE users CHANGE phone_no e_mail string;

删除表

drop table if exists my_db.student;

///清空表

truncate table_name;

创建视图

CREATE VIEW IF NOT EXISTS users_view AS

select name, age from users;

/修改视图

alter view users_view AS

select name, age,e_mail from users;

//删除视图

drop view users_view

参考链接:https://www.w3cschool.cn/impala/

impala sql清单相关推荐

  1. Impala SQL 语言参考

    2019独角兽企业重金招聘Python工程师标准>>> Impala SQL 语言参考 Cloudera Impala 的查询语言是基于 SQL 的.为了保护用户在技能和查询设计方面 ...

  2. Impala Shell 和 Impala SQL

    1.Impala 外部 Shell Impala外部Shell 就是不进入Impala内部,直接执行的ImpalaShell 例如通过外部Shell查看Impala帮助可以使用: $ impala-s ...

  3. Impala SQL实现按天、自然周、月、季度、年份周期统计

    在整理完了Oracle.MySQL中如何通过SQL实现按天.自然周.月.季度.年份周期统计时,忽然想起在hive与impala中,SQL的语法也是不尽相同,但又有共通之处. 俗话说,授人予鱼,不若授人 ...

  4. 客快物流大数据项目(七十二):Impala sql 语法

    文章目录 Impala sql 语法 一.数据库特定语言 1.创建数据库 2.删除数据库

  5. impala jdbc驱动执行impala sql的一个坑(不支持多行sql)

    架构使用spark streaming 消费kafka的数据,并通过impala来插入到kudu中,但是通过对比发现落地到kudu表中的数据比kafka消息数要少,通过后台日志发现,偶发性的出现jav ...

  6. 按日期循环执行impala sql脚本

    由于impala数仓工作中,经常遇到历史数据跑错或者需要手动重补历史数据的情况,编写两个shell实现快速完成调度操作 指定特定的日期运行sql脚本 指定开始/结束日期的日期区间运行脚本 忽略掉指定日 ...

  7. Impala和Hive之间的SQL差异

    Impala和Hive之间的SQL差异 Impala的SQL语法遵循SQL-92标准,并且在内置功能等领域包括许多行业扩展.有关将SQL代码从各种数据库系统移植到Impala的一般讨论,请参见将SQL ...

  8. impala查询语句_Impala SQL

    不多说,直接上干货! 其实,跟hive差不多,大家可以去参考我写的hive学习概念系列. Impala SQL VS HiveQL 下面是Impala对基础数据类型和扩展数据类型的支持 • 此外,Im ...

  9. Hello World on Impala

    Cloudera Impala 官方教程 <Impala Tutorial>,解说了Impala一些基本操作,但操作步骤前后缺少连贯性,本文节W选<Impala Tutorial&g ...

最新文章

  1. laravel项目composer安装
  2. vue 嵌套表格组件_vue+element中表格嵌套怎么做?
  3. Dipforge 3.0 a3 发布,基于 Web 的集成开发环境
  4. Chrome 插件:自己写的插件提示请停用以开发者模式运行的插件处理方法,该拓展程序未列在chrome网上应用商店中,并可能是在您不知情的情况下添加的解决办法
  5. 你了解VLSM多少(1)
  6. [LeetCode] Generate Parentheses
  7. python3多线程实例_python3多线程糗事百科案例
  8. TP5在前端时间戳转换为时间格式
  9. Python docs
  10. Nacos Spring 快速开始
  11. RESTFUL协议入门介绍
  12. 第12章[12.2] Ext JS可编辑列Grid的全场景开发
  13. Apache Bench
  14. vba 添加outlook 签名_利用VBA发送附件电子邮件
  15. 模式识别谱聚类matlab,基因表达谱聚类分析
  16. ARM9——五级流水线结构,以及PC指针
  17. centos 测试get请求_centos网站服务器简单性能测试命令
  18. OpenLayers3基础教程——OL3 介绍control
  19. Java实现-数字组合1
  20. 华为mate30老是显示无法连接服务器,华为Mate30 Pro手机微信信息老是发不出,提示无法连接到网络...

热门文章

  1. 工作196:注意接收数据的格式
  2. 前端学习(2526):Vuex成果和展示
  3. java学习(97):中断线程的另一种处理
  4. Vue中动态(import 、require)显示img图片
  5. .Net Core 3.0依赖注入替换 Autofac
  6. Oracle之例外(异常)
  7. Angular1.63 绑定数据与继承
  8. iOS屏幕尺寸和分辨率了解
  9. atitit.orm的缺点与orm框架市场占有率,选型attilax总结
  10. C#基础 基本语法4