大数据ClickHouse进阶(十七):数据字典查询和删除
Posted Lansonli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据ClickHouse进阶(十七):数据字典查询和删除相关的知识,希望对你有一定的参考价值。
文章目录
数据字典查询
一、元数据查询
通过system.dictionaries系统表可以查询扩展字典的元数据信息。查询语句如下:
select name,type,key,attribute.names,attribute.types,source from system.dictionaries;
注意:以上查询字段的意义如下
name:字典的名称,使用字典函数时需要通过字典名称访问数据。
type:字典所属类型。
key:字典的key值,数据通过key值定位。
attribute.names:属性名称,以数组形式保存。
attribute.types:属性类型,以数组形式保存。
source:数据源信息。
二、数据查询
字典数据使用时可以通过字典函数获取,如下:“dictGetString”就是字典函数,查询使用字典如下:
#使用dic查询数据
select person_id,name,age,loc_id,dictGetString('dic_test_db.dic_loc_info','local_name',loc_id) as local_name from person_info;
dictGet('字典名称','获取的值','查询的值(参数)'),如果字典类型是复合型key(参照字典类型complex_key_hashed/complex_key_cache)对应字典类型,在使用dicGet时需要使用元组作为参数,例如:dicGetString('字典名称','获取的值',tuple(col1,col2))。
除了dictGetString外,ClickHouse还提供了一系列以dictGet为前缀的字典函数,具体如下:
- 获取整形数据的函数:
dictGetUInt8,dictGetUInt16,dictGetUInt32,dictGetUInt64,dictGetInt8,dictGetInt16,dictGetInt32,dictGetInt64。
- 获取浮点数据的函数:
dictGetFloat32,dictGetFloat64
- 获取日期数据的函数:
dictGetDate,dictGetFloat64
- 获取字符串数据的函数:
dictGetString,dictGetUUID
我们在使用时,也可以直接使用dictGet(xx)传入对应的参数即可。
三、字典删除
删除字典语法如下:
DROP DICTIONARY dic_name;
#将dic_loc_info删除
node1 :) drop dictionary dic_loc_info;
- 📢博客主页:https://lansonli.blog.csdn.net
- 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
- 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
- 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
以上是关于大数据ClickHouse进阶(十七):数据字典查询和删除的主要内容,如果未能解决你的问题,请参考以下文章
大数据ClickHouse进阶(十九):ClickHouse字典的数据源