impala sql清单
创建数据库
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清单相关推荐
- Impala SQL 语言参考
2019独角兽企业重金招聘Python工程师标准>>> Impala SQL 语言参考 Cloudera Impala 的查询语言是基于 SQL 的.为了保护用户在技能和查询设计方面 ...
- Impala Shell 和 Impala SQL
1.Impala 外部 Shell Impala外部Shell 就是不进入Impala内部,直接执行的ImpalaShell 例如通过外部Shell查看Impala帮助可以使用: $ impala-s ...
- Impala SQL实现按天、自然周、月、季度、年份周期统计
在整理完了Oracle.MySQL中如何通过SQL实现按天.自然周.月.季度.年份周期统计时,忽然想起在hive与impala中,SQL的语法也是不尽相同,但又有共通之处. 俗话说,授人予鱼,不若授人 ...
- 客快物流大数据项目(七十二):Impala sql 语法
文章目录 Impala sql 语法 一.数据库特定语言 1.创建数据库 2.删除数据库
- impala jdbc驱动执行impala sql的一个坑(不支持多行sql)
架构使用spark streaming 消费kafka的数据,并通过impala来插入到kudu中,但是通过对比发现落地到kudu表中的数据比kafka消息数要少,通过后台日志发现,偶发性的出现jav ...
- 按日期循环执行impala sql脚本
由于impala数仓工作中,经常遇到历史数据跑错或者需要手动重补历史数据的情况,编写两个shell实现快速完成调度操作 指定特定的日期运行sql脚本 指定开始/结束日期的日期区间运行脚本 忽略掉指定日 ...
- Impala和Hive之间的SQL差异
Impala和Hive之间的SQL差异 Impala的SQL语法遵循SQL-92标准,并且在内置功能等领域包括许多行业扩展.有关将SQL代码从各种数据库系统移植到Impala的一般讨论,请参见将SQL ...
- impala查询语句_Impala SQL
不多说,直接上干货! 其实,跟hive差不多,大家可以去参考我写的hive学习概念系列. Impala SQL VS HiveQL 下面是Impala对基础数据类型和扩展数据类型的支持 • 此外,Im ...
- Hello World on Impala
Cloudera Impala 官方教程 <Impala Tutorial>,解说了Impala一些基本操作,但操作步骤前后缺少连贯性,本文节W选<Impala Tutorial&g ...
最新文章
- laravel项目composer安装
- vue 嵌套表格组件_vue+element中表格嵌套怎么做?
- Dipforge 3.0 a3 发布,基于 Web 的集成开发环境
- Chrome 插件:自己写的插件提示请停用以开发者模式运行的插件处理方法,该拓展程序未列在chrome网上应用商店中,并可能是在您不知情的情况下添加的解决办法
- 你了解VLSM多少(1)
- [LeetCode] Generate Parentheses
- python3多线程实例_python3多线程糗事百科案例
- TP5在前端时间戳转换为时间格式
- Python docs
- Nacos Spring 快速开始
- RESTFUL协议入门介绍
- 第12章[12.2] Ext JS可编辑列Grid的全场景开发
- Apache Bench
- vba 添加outlook 签名_利用VBA发送附件电子邮件
- 模式识别谱聚类matlab,基因表达谱聚类分析
- ARM9——五级流水线结构,以及PC指针
- centos 测试get请求_centos网站服务器简单性能测试命令
- OpenLayers3基础教程——OL3 介绍control
- Java实现-数字组合1
- 华为mate30老是显示无法连接服务器,华为Mate30 Pro手机微信信息老是发不出,提示无法连接到网络...