热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Phoenix的shell简单操作

1,进入(hbase01是主机名,2181是zookeeper的端口)sqlline.pyhbase01:21812,退出࿰

1,进入(hbase01是主机名,2181是zookeeper的端口)

sqlline.py hbase01:2181

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

!quit

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

!tables

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

(1)表名和列族名以及表名如果需要小写都得加双引号。
create table "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中已经存在的表

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则不会。


推荐阅读
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • 使用C++编写程序实现增加或删除桌面的右键列表项
    本文介绍了使用C++编写程序实现增加或删除桌面的右键列表项的方法。首先通过操作注册表来实现增加或删除右键列表项的目的,然后使用管理注册表的函数来编写程序。文章详细介绍了使用的五种函数:RegCreateKey、RegSetValueEx、RegOpenKeyEx、RegDeleteKey和RegCloseKey,并给出了增加一项的函数写法。通过本文的方法,可以方便地自定义桌面的右键列表项。 ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 电话号码的字母组合解题思路和代码示例
    本文介绍了力扣题目《电话号码的字母组合》的解题思路和代码示例。通过使用哈希表和递归求解的方法,可以将给定的电话号码转换为对应的字母组合。详细的解题思路和代码示例可以帮助读者更好地理解和实现该题目。 ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • 开发笔记:select from具体执行相关知识介绍及案例分析
    本文由编程笔记小编整理,主要介绍了select from具体执行相关的知识,包括数据插入、查询最小rowID、查询每个重复名字的最小rowID、删除重复数据等操作,并提供了案例分析。希望对读者有一定的参考价值。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • 猜字母游戏
    猜字母游戏猜字母游戏——设计数据结构猜字母游戏——设计程序结构猜字母游戏——实现字母生成方法猜字母游戏——实现字母检测方法猜字母游戏——实现主方法1猜字母游戏——设计数据结构1.1 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • 十大经典排序算法动图演示+Python实现
    本文介绍了十大经典排序算法的原理、演示和Python实现。排序算法分为内部排序和外部排序,常见的内部排序算法有插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。文章还解释了时间复杂度和稳定性的概念,并提供了相关的名词解释。 ... [详细]
author-avatar
小女人要有小性感
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有