1.Phoenix链接hbase sqlline.py cdh01,cdh02,cdh03 sqlline.py hadoop01,hadoop02,hadoop03,hadoop04,hadoop05
相关操作语法
https://blog.csdn.net/u010916338/article/details/80309513

  1. 按天数取每天的最大
    select parkid,parkname,malenum,mennum,timestateid, DATE_FORMAT(from_unixtime(left(timestateid,10)),’%Y-%m-%d’) as dt from park_user) a
    where timestateid between 1569859200000 and 1570464000000
    group by parkid,dt

1,进入(cdh01是主机名,2181是zookeeper的端口)
sqlline.py cdh01:2181

2,退出(注意结尾不加分号)
!quit

3,查询所有表(注意结尾不加分号)
!tables

4,创建表(除了上面带感叹号的语句,其余语句都得加分号)

(1)表名和列族名以及表名如果需要小写都得加双引号。
create table if not exists “person” (“id” integer not null primary key, “cf”.“name” varchar, “cf”.“age” integer);
(2)这样创建出来的列族名称和列名都是大写的。
create table “person” (id integer not null primary key, cf.name varchar, cf.age integer);
注意:表名和列族名区分大小写,加了双引号就必须用小写表名去查否则查不到。列名不区分大小写,显示是大写,用小写依然查得到。

5,删除表结构
drop table “person”;

6,修改表结构
alter table “person” add sex varchar;

7,查看表结构信息
!describe “person”

8,创建表某一列索引
create index “person_index” on “person”(“cf”.“name”);

9,删除索引
drop index “person_index” on “person”

8,向表中插入一条数据(注意:数据值需要用引号时只能用单引号,双引号会报错)
upsert into “person” values(1,‘zhangsan’,27,‘男’);

9,删除表中数据(注意:数据值需要用引号时只能用单引号,双引号会报错)
delete from “person” where name=‘zhangsan’;

10,修改表中数据(注意:修改时必须带上id,否则会报错)(注意:数据值需要用引号时只能用单引号,双引号会报错)
upsert into “person”(id,sex) values(1, ‘女’);

11,查询表中数据(注意:数据值需要用引号时只能用单引号,双引号会报错)
(1)全表查询
select * from “person”;
(2)条件查询
select * from “person” where name=‘zhangsan’;
(3)group by
select sex ,count(sex) as num from “person” where age >20 group by sex;
(4)case when
select (case name when ‘zhangsan’ then ‘sansan’ when ‘lisi’ then ‘sisi’ else name end)as showname from “person”;

12.创建与hbase命名空间对应的schema CREATE SCHEMA IF NOT EXISTS “binlog”;

13.创建联合索引并带出需要的字段
CREATE INDEX ticket_total_data_uindex ON “ft_test_v2”.“ticket_total_data”(“timestamp”,“parkId”) include (“ticketClassName”,“ticketNum”,“ticketSales”);

14.删除索引
drop index park_in_index on “FT_v1”.“park_in”;
drop index PARK_GROUP_INDEX on “streaming_data”.“park_group”;

15.查询执行计划
explain select * from “user_info”.“user_info_basic” where “phoneNumber” = ‘15080560398’;

16.关联hbase中已经存在的表
create view “test”(id varchar not null primary key, “cf1”.“name” varchar, “cf1”.“age” varchar, “cf1”.“sex” varchar);
注意:
(1)如果不加列族会报错如下:
Error: ERROR 505 (42000): Table is read only. (state=42000,code=505)
(2)如果不加双引号则会匹配不到hbase表中的字段,结果就是虽然关联上数据库但是没有值!!!
(3)关联的时候,Phoenix建表最好都是varchar类型,不容易出错
(4)最好创建view视图,不要创建table表格。因为Phoenix端删除table会连带删除hbase表格,如果是view则不会。


原文:https://blog.csdn.net/u010916338/article/details/80309513

17.拼接字符串 || 字符串拼装 (‘a’||‘b’) as str 结果 ab
create table if not exists “use_users” (
info.Age integer,
info.PhoneOperators varchar,
info.IDCardType integer,
info.executetime varchar
);

create table “person” (“id” integer not null primary key, “cf”.“name” varchar, “cf”.“age” integer);

alter table “person” add sex varchar;

//子查询1 某数据在某表第多少排名
select count(1) from “TICKET_STREAM”.“CENTER_SALE_PARK” t where t.“sellMoney” >= (select “sellMoney” from “TICKET_STREAM”.“CENTER_SALE_PARK” where “parkId” = 1008) ;
select t.“parkId”,t.“parkName”,t.“sellMoney”,t.“salePrecent” from “TICKET_STREAM”.“CENTER_SALE_PARK” t where t.“sellMoney” >= (select “sellMoney” from “TICKET_STREAM”.“CENTER_SALE_PARK” where “parkId” = 1000) ;

//子查询2
select d.“parkId”,e.“parkId”,e.“sellMoney”,d.“personNum” from “TICKET_STREAM”.“CENTER_SALE_PARK” e JOIN “TICKET_STREAM”.“CENTER_ENTER_PARK” d ON e.“parkId” = d.“parkId”;
//order by排序时遇到分组,先分组,再在分组的结果后排序
select * from ( select id,sum(money) as totalNum from table group by id ) t order by t.totalNum desc;

upsert into “streaming_data”.“ticket_sale”(“parkId”,“parkName”,“sellMoney”,“salePrecent”) values(1002, ‘世界’ , 895.1715, ‘16.7%’);
upsert into “TICKET_STREAM”.“CENTER_ENTER_PARK”(“parkId”,“parkName”,“personNum”,“personPrecent”) values(1002, ‘世界’ , 239, '12.7%);

upsert into “streaming_data”.“park_origin_divide_statement”(“uniqueId”,“parkId”,“origin”,“oneRange_in”,“oneRange_un”,“twoRange_in”,“twoRange_un”,“threeRange_in”,“threeRange_un”,“fourRange_in”,“fourRange_un”,“fiveRange_in”,“fiveRange_un”,“sixRange_in”,“sixRange_un”,“sevenRange_in”,“sevenRange_un”,“eightRange_in”,“eightRange_un”,“nineRange_in”,“nineRange_un”,“tenRange_in”,“tenRange_un”,“elevenRange_in”,“elevenRange_un”,“twelveRange_in”,“twelveRange_un”,“thirteenRange_in”,“thirteenRange_un”) values(1,1010,‘dianshang’,55,5,75,6,77,7,123,12,55,5,66,6,77,7,123,12,555,5,66,61,77,7,66,6,77,7);

upsert into “streaming_data”.“park_origin_divide_statement”(“uniqueId”,“parkId”,“origin”,“oneRange_in”,“oneRange_un”,“twoRange_in”,“twoRange_un”,“threeRange_in”,“threeRange_un”,“fourRange_in”,“fourRange_un”,“fiveRange_in”,“fiveRange_un”,“sixRange_in”,“sixRange_un”,“sevenRange_in”,“sevenRange_un”,“eightRange_in”,“eightRange_un”,“nineRange_in”,“nineRange_un”,“tenRange_in”,“tenRange_un”,“elevenRange_in”,“elevenRange_un”,“twelveRange_in”,“twelveRange_un”,“thirteenRange_in”,“thirteenRange_un”) values(2,1010,‘travle’,55,5,66,6,77,7,123,12,888,5,66,6,77,57,123,12,55,5,66,56,77,7,66,16,77,7);

upsert into “streaming_data”.“park_user”(“parkId”,“parkName”,“maleNum”,“menNum”,“malePercent”,“menPercent”,“oneRange”,“twoRange”,“threeRange”,“fourRange”,“fiveRange”,“sixRange”) values(1010, ‘世界’, 65, 35, ‘65%’, ‘35%’, 20,25,22,15,8,10);

select e.“parkId”,e.“sellMoney”,d.“saleAmount” from “streaming_data”.“ticket_sale” e JOIN “streaming_data”.“shop_sale” d ON e.“parkId” = d.“parkId” where e.“parkId” IN (1006, 1007, 1008, 1009);

,(select sum(a.“sellMoney” + b.“saleAmount”) as “totalNum” from “streaming_data”.“ticket_sale” a,“streaming_data”.“shop_sale” b) as f
,(select sum(a.“sellMoney”) as sellMoney from “streaming_data”.“ticket_sale” a ) f ,(select sum(b.“saleAmount”) as saleAmount from “streaming_data”.“shop_sale” b ) g

1.parkId primary key,parkName(公园名称),maleNum(人数),menNum(人数),malePercent,menPersent,oneRange(19岁以下),twoRange(1930岁),threeRange(3138岁),fourRange(38以上)

//排序
select d.PARKID,d.SALEAMOUNT, (f.sellMoney + g.saleAmount) as totalNum from (select c.PARKID as PARKID, SUM(c.SALEAMOUNT) as SALEAMOUNT from ( select b."parkId" as parkId, b."saleAmount" as saleAmount from "streaming_data"."shop_sale" b union all select a."parkId" as parkId, a."sellMoney" as saleAmount from "streaming_data"."ticket_sale" a ) c GROUP BY c.PARKID ) d,(select sum(a."sellMoney") as sellMoney from "streaming_data"."ticket_sale" a ) f ,(select sum(b."saleAmount") as saleAmount from "streaming_data"."shop_sale" b ) g ORDER by d.SALEAMOUNT desc;

//按公园排序
SELECT d.PARKID AS PARKID,d.PARKNAME as PARKNAME, d.SALEAMOUNT AS SALEAMOUNT FROM (
SELECT c.PARKID AS PARKID,c.PARKNAME as PARKNAME, SUM(c.SALEAMOUNT) AS SALEAMOUNT FROM (
SELECT b.“parkId” AS parkId, b.“parkName” AS parkName, b.“saleAmount” AS saleAmount FROM “streaming_data”.“shop_sale” b WHERE b.“parkId” IN
(1007,1008, 1009,1010)
UNION ALL
SELECT a.“parkId” AS parkId, a.“parkName” AS parkName, a.“sellMoney” AS saleAmount FROM “streaming_data”.“ticket_sale” a WHERE a.“parkId” IN
(1007, 1008, 1009,1010)
) c GROUP BY c.PARKID, c.PARKNAME
) d ORDER BY d.SALEAMOUNT DESC;

//统计第几名
select count(1) from
(select c.PARKID as PARKID, SUM(c.SALEAMOUNT) as SALEAMOUNT from
( select b.“parkId” as parkId, b.“saleAmount” as saleAmount from “streaming_data”.“shop_sale” b union all select a.“parkId” as parkId,
a.“sellMoney” as saleAmount from “streaming_data”.“ticket_sale” a )
c GROUP BY c.PARKID) t1
where t1.SALEAMOUNT >=
(select t2.SALEAMOUNT from
(select c.PARKID as PARKID, SUM(c.SALEAMOUNT) as SALEAMOUNT from
( select b.“parkId” as parkId, b.“saleAmount” as saleAmount from “streaming_data”.“shop_sale” b union all select a.“parkId” as parkId,
a.“sellMoney” as saleAmount from “streaming_data”.“ticket_sale” a ) c
GROUP BY c.PARKID) t2
where t2.PARKID = 1008) ;
//查单表数据附带另一列值
select e.“parkId”,e.“sellMoney”,d.ss
from “streaming_data”.“ticket_sale” e,
(select sum(“saleAmount”) as ss from “streaming_data”.“shop_sale”) d
where e.“parkId” IN (1006, 1007, 1008, 1009);

----------------------------QAQ----------------------------------------------------

create schema IF NOT EXISTS “user_info”;

drop table “user_info”.“user_info_basic”;
create table if not exists “user_info”.“user_info_basic”(
“id” varchar not null PRIMARY KEY, --主键id
“info”.“headImg” varchar, --会员头像
“info”.“memberName” varchar, --会员姓名
“info”.“sex” varchar, --会员性别
“info”.“phoneNumber” varchar, --手机号码
“info”.“levelID” varchar, --会员等级
“info”.“birthday” varchar, --会员生日
“info”.“idCardNo” varchar, --证件号码
“info”.“career” varchar, – 职业
“info”.“isWechatVip” varchar, --是否绑定微信会员卡
“info”.“qq” varchar, --绑定qq号
“info”.“memberAddress” varchar, --会员常驻地
“info”.“memberStatus” varchar, --会员状态
“info”.“PlateNumber” varchar, --车牌号码
“info”.“age” INTEGER, --年龄
“info”.“userID” varchar, --唯一标识
“info”.“registerTime” varchar, --注册时间
“info”.“registerSource” varchar, --注册渠道
“info”.“upgradeTime” varchar, --升级时间
“info”.“upgradeSource” varchar --升级渠道
) SALT_BUCKETS=2, COMPRESSION=‘GZ’;

UPSERT INTO “user_info”.“user_info_basic” VALUES (‘101’,‘a’,‘小猪佩奇’,‘男’,‘13100000001’,‘绿卡’,‘2000-01-01’,‘0001’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘102’,‘a’,‘小狗佩奇’,‘男’,‘13100000002’,‘绿卡’,‘2000-01-01’,‘0002’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘103’,‘a’,‘小羊佩奇’,‘男’,‘13100000003’,‘绿卡’,‘2000-01-01’,‘0003’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘104’,‘a’,‘小猫佩奇’,‘男’,‘13100000004’,‘绿卡’,‘2000-01-01’,‘0004’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘105’,‘a’,‘小鸡佩奇’,‘男’,‘13100000005’,‘绿卡’,‘2000-01-01’,‘0005’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘106’,‘a’,‘小鼠佩奇’,‘男’,‘13100000006’,‘绿卡’,‘2000-01-01’,‘0006’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘107’,‘a’,‘小牛佩奇’,‘男’,‘13100000007’,‘绿卡’,‘2000-01-01’,‘0007’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘108’,‘a’,‘小猴佩奇’,‘男’,‘13100000008’,‘绿卡’,‘2000-01-01’,‘0008’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘109’,‘a’,‘小兔佩奇’,‘男’,‘13100000009’,‘绿卡’,‘2000-01-01’,‘0009’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);
UPSERT INTO “user_info”.“user_info_basic” VALUES (‘100’,‘a’,‘小鹿佩奇’,‘男’,‘13100000000’,‘绿卡’,‘2000-01-01’,‘0000’,‘学生’,‘是’,‘qq123456789’,‘北京’,‘已激活’,‘a123456’,2,‘a1’,‘2020-01-01’,‘微信’,‘2020-01-01’,‘旅游App’);

查询正常 :select “registerTime”,“memberStatus” from “user_info”.“user_info_basic” where “id” =‘102’ order by “memberStatus” limit 3;
查询正常 :select “registerTime”,“memberStatus”,“idCardNo” from “user_info”.“user_info_basic” where “idCardNo”=‘0002’ order by “memberStatus” limit 3;
查询异常 :select “registerTime”,“memberStatus” from “user_info”.“user_info_basic” where “idCardNo”=‘0002’ order by “memberStatus” limit 3;

question :为什么查询条件的非主键字段不在选择中字段中会出现异常???

2.全局索引示例
phoenix全局索引缺陷:写入慢、查询块

drop index user_info_basic_index on “user_info”.“user_info_basic”;
CREATE INDEX user_info_basic_index ON “user_info”.“user_info_basic”(“phoneNumber”, “idCardNo”) INCLUDE(“headImg”,“memberName”,“sex”,“levelID”,“birthday”,“career”,“isWechatVip”,“qq”,“memberAddress”,“memberStatus”,“PlateNumber”,“age”,“userID”,“registerTime”,“registerSource”,“upgradeTime”,“upgradeSource”);

hbase-phoenix常用命令相关推荐

  1. Phoenix常用命令

    Phoenix常用命令 目标:掌握Phenix常用的表操作命令 创建phoenix表 create table if not exists testtable( A bigint not null, ...

  2. 01 HBase基本概念和hbase shell常用命令用法

    本文转载自:http://archive.cnblogs.com/a/2178064/ 1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一 ...

  3. HBase基本概念和hbase shell常用命令用法

    1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...

  4. HBase总结(十三)HBase Shell 常用命令及例子

    下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', '列名称1','列名称2','列名称N ...

  5. HBase学习笔记2 - HBase shell常用命令

    转载请标注原链接:http://www.cnblogs.com/xczyd/p/6639397.html 扫表的时候限定行数 scan 'TABLE_NAME', { LIMIT => 5 } ...

  6. Hbase shell 常用命令

    为什么80%的码农都做不了架构师?>>>    下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 ...

  7. HBase【付诸实践 01】hbase shell 常用命令详解(表操作+数据增删改查+2种查询操作)(hbase-2.4.5 单机版standalone模式)

    1.运行环境 HBase的安装文件为:hbase-2.4.5-bin.tar.gz 相关配置信息可以查看<HBase-2.4.5 单机版standalone模式安装配置> 其他环境如下: ...

  8. HBase Shell常用命令

    概述:HBase是一个分布式的.高可靠性.高性能的存储系统,面向列的开源数据库.HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop  ...

  9. hbase 数据插入指定rowkey_「HBase大爆炸」HBase之常用Shell命令

    HBase之常用Shell命令 1.进入 HBase客户端命令操作界面 2.查看帮助命令 3.查看当前数据库中有哪些表 4.创建一张表 创建user表,包含info.data两个列族 或者 5.添加数 ...

  10. HBase Shell常用的命令

    场景 HBase在CentOS上分布集群安装: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119511593 在上面搭建起来H ...

最新文章

  1. 关于学习Python的一点学习总结(34->构造函数->重写方法和特殊构造)
  2. 给嵌入式工程师的一封信
  3. 全球及中国绝缘材料用沸石行业“十四五”前景规划及未来发展趋势报告2021年版
  4. 配置bitnami-redmine自带的Subversion
  5. Bootstrap在线编辑器简单分享
  6. bootstrap-multiselect.js插件、chosen插件、clipboard复制插件、layer.photos、lightbox插件相册预览插件学习
  7. java:找不到符号
  8. react中dispatch_react-redux中dispatch是异步?
  9. 家用摄像机告知你“第三只眼睛”的重要性
  10. MS-DOS系统的操作命令
  11. torch F.cosine_similarity使用
  12. 计算机网络 学习通 第三章作业
  13. postgresql 12.0 源码编译安装
  14. 通信原理 | 滤波器:滤波器的概念、理想滤波器和实际滤波器
  15. 浏览器截图截取整个页面的方法
  16. 专偷密码的“偷密婆” 疯狂盗取QQ帐号
  17. 详解vue生命周期(重点!!)
  18. Python学习FAQ
  19. 【Luogu P4766】 [CERC2014]Outer space invaders(区间dp)
  20. 【转】CultureInfo中重要的InvariantCulture

热门文章

  1. 下载安卓源码都干了什么?
  2. C语言strcpy库函数的讲解
  3. Ubuntu下VSCode的安装与卸载【闲聊】
  4. Js之offset属性与style属性的区别
  5. 揭秘魅族日志分析平台的建设
  6. mysql查询姓刘全民三个_数据库练习题4--sql简单查询(含答案)
  7. Daily English Dictation
  8. 报告!这群阿里工程师在偷偷养猪
  9. 年轻人创业为何屡屡失败?有哪些方面的压力
  10. 酒店汗蒸房添加商用汗蒸房经营该如何去着手准备?