当前位置: 首页 > news >正文

【Hive】HQL Map 『CRUD | 相关函数』

文章目录

  • 1. Map 增删改查
    • 1.1 声明 Map 数据类型
    • 1.2 增
    • 1.3 删
    • 1.4 改
    • 1.5 查
  • 2. Map 相关函数
    • 2.1 单个Map
  • 3. Map 与 String
    • 3.1 Map 转 string
    • 3.2 string 转 Map

1. Map 增删改查

1.1 声明 Map 数据类型

  1. 语法:map<基本数据类型, 基本数据类型> 注意是<>,不是()
  2. 例子:
    1. 创建表时:
      create table temp_db.map_test(id int comment "源数据主键id",smap map<string,string> comment "string型map",imap map<string,int> comment "int型map"
      );
      
    2. 字段填充时:cast(null as map<string, string>) as XXX

1.2 增

insert into temp_db.map_test(id,smap,imap) 
select 12,map('姓名','张三') as pp,map('年龄',23,'性别',1) as dd;

1.3 删

没有删除,只能覆盖

1.4 改

array_name['key'] = 'xxxx'

1.5 查

select array_name['key'] ;

注意:数组越界会报错。

2. Map 相关函数

2.1 单个Map

  1. map_keys(map_name):获取该map的所有key,结果是一个Array。
  2. map_keys(map_name):获取该map的所有value,结果是一个Array。
  3. size(map_name):获取该map的键值对个数。
  4. 判断map中是否包含某个key值:array_contains(map_keys(map_name), ‘key’) 或者 map_name[“key”] is not null

3. Map 与 String

3.1 Map 转 string

select ...,concat_ws(',', collect_list(concat_ws(':', k, v) ) )
from test_map_1
lateral view outer explode(map1) kv as k,v

3.2 string 转 Map

select str_to_map("name:zhangsan,age:25");

注意:键值对都没有引号

http://www.lryc.cn/news/136158.html

相关文章:

  • ELF修复基本工作原理
  • matlab实现输出的几种方式(disp函数、fprintf函数、print函数)
  • C/C++数据库编程
  • 通过python在unity里调用C#接口
  • C++笔记之左值与右值、右值引用
  • JS逆向-某招聘平台token
  • LLMs高效的多 GPU 计算策略Efficient multi-GPU compute strategies
  • jvm-类加载子系统
  • 【实例分割】(一)Mask R-CNN详细介绍带python代码
  • 面试官问我Redis怎么测,我一脸懵逼!
  • 【Spring Boot】四种核心类的依赖关系:实体类、数据处理类、业务处理类、控制器类
  • opencv 进阶15-检测DoG特征并提取SIFT描述符cv2.SIFT_create()
  • ES5 的构造函数和 ES6 的类有什么区别
  • AUTOSAR配置与实践(配置篇) 如何条件控制PDU外发
  • 2023年湖北中级工程师职称申报专业有哪些?甘建二告诉你
  • 记录:ubuntu20.04+ORB_SLAM2_with_pointcloud_map+ROS noetic
  • 文心问数Sugar Bot :大模型+BI,多轮会话自动生成可视化图表与数据结论
  • 21、WEB漏洞-文件上传之后端黑白名单绕过
  • windows的django项目部署到linux的docker上
  • 【力扣】70. 爬楼梯 <动态规划>
  • 数据结构(3)
  • 深入浅出Pytorch函数——torch.nn.init.xavier_uniform_
  • 优橙内推安徽专场——5G网络优化(中高级)工程师
  • 2023年计算机设计大赛国三 数据可视化 (源码可分享)
  • 工业生产全面感知!工业感知云来了
  • Lnton羚通关于Optimization在【PyTorch】中的基础知识
  • 冒泡排序算法
  • 无人机航管应答机 ping200XR
  • oracle归档日志满了导致启动不起来解决
  • 高等数学:线性代数-第二章