Phoenix常用命令 操作hbase

1、登录命令
./sqlline.py localhost:2181:/hbase-unsecure

Phoenix常用命令 操作hbase_第1张图片


phoenix-sqlline localhost:2181:/hbase-unsecure

Phoenix常用命令 操作hbase_第2张图片


2、退出

!quit

615800-20170820102015787-1949478196.png


!exit

615800-20170820102055662-207300675.png


3、帮助
 

Phoenix常用命令 操作hbase_第3张图片



4、列出metadata信息
 



5、创建表

create table if not exists ljc.student(id integer primary key,name varchar(20));
 

615800-20170820102726006-1626489840.png



6、查看当前库中存在的表
 !tables
 

615800-20170820102901490-1844828666.png



phoenix中的表信息都存在SYSTEM.CATALOG表中,也可以通过下面的sql语句查看系统的表信息
select * from SYSTEM.CATALOG;
  

Phoenix常用命令 操作hbase_第4张图片


注意:

  1. 如果不加双引号,会自动将小写转为大写
  2. phoenix表名区分大小写

7、删除表

drop table ljc.student;

Phoenix常用命令 操作hbase_第5张图片



8、查看表结构

  !describe "METRIC_AGGREGATE"

615800-20170820103844068-474229884.png



注意: phoenix/hbase对表名、字段名都是大小写敏感,如果直接写小写字母,不加双引号,则默认会被转换成大写字母
9、插入、更新
  Phoenix中不存在update的语法关键字,而是upsert ,功能上替代了Insert+update 

upsert into ljc.student(id,name) values(1,'zhangsan');
upsert into ljc.student(id,name) values(2,'lisi');
upsert into ljc.student(id,name) values(3,'wangwu');
upsert into ljc.student(id,name) values(4,'liuping');
upsert into ljc.student(id,name) values(5,'zhouhong');

Phoenix常用命令 操作hbase_第6张图片



10、示例SQL

create table if not exists ljc.student(id integer primary key,name varchar(20));
upsert into ljc.student(id,name) values(1,'zhangsan');
upsert into ljc.student(id,name) values(2,'lisi');
upsert into ljc.student(id,name) values(3,'wangwu');
upsert into ljc.student(id,name) values(4,'liuping');
upsert into ljc.student(id,name) values(5,'zhouhong');
 
create table if not exists ljc.score(id integer primary key,score integer);
upsert into ljc.score(id,score) values(1,98);
upsert into ljc.score(id,score) values(2,87);
upsert into ljc.score(id,score) values(3,90);
upsert into ljc.score(id,score) values(4,80);
upsert into ljc.score(id,score) values(5,94);
 
create table if not exists ljc.course(id integer primary key,course varchar(20));
upsert into ljc.course(id,course) values(1,'yuwen');
upsert into ljc.course(id,course) values(2,'shuxue');

你可能感兴趣的:(大数据)