19、ClickHouse企业中常见的20种用法
文章目录
- 19、ClickHouse企业中常见的20种用法
- -- 1、表结构添加字段
- -- 2、删除语句
- -- 3、更新语法
- -- 4、查询表字段结构
- -- 5、展示字段加密处理 身份证号(字母加数字)加密
- -- 6、展示字段加密处理 手机号(纯数字)加密
- -- 7、计数 去重后
- -- 8、计数 不去重
- -- 9、运算 divide--除法 *--乘法
- -- 10、模糊查询
- -- 11、变量设置
- -- 12、日期转换后 与变量范围匹配
- -- 13、字符串切割 保留前两位
- -- 14、求和
- -- 15、转为日期类型 java long类型clickhouse DateTime64(3, 'Asia/Shanghai')类型
- -- 16、查询阻塞的sql
- -- 17、将阻塞的sql杀掉
- -- 18、分组
- -- 19、排序
- -- 20、WHEN...THEN...
19、ClickHouse企业中常见的20种用法
– 1、表结构添加字段
-- 表结构添加字段之添加字符串
DROP TABLE dev_nanmu.user ON CLUSTER `default` ;
ALTER TABLE dev_nanmu.user_local ON CLUSTER `default`
ADD COLUMN `balance` Float64,
ADD COLUMN `time` String,
ADD COLUMN `createTime` DateTime64(3, 'Asia/Shanghai');
CREATE TABLE dev_nanmu.user ON CLUSTER `default` AS dev_nanmu.user_local ENGINE = Distributed('default', 'dev_nanmu.user', 'dev_nanmu.user_local', toYYYYMM(timestamp));
– 2、删除语句
ALTER TABLE `dev_nanmu`.`user_local` ON CLUSTER `default` DELETE where `name`='张三';
– 3、更新语法
alter table `dev_nanmu`.`user_local` ON CLUSTER `default` update `confirmTime`='2022-12-02 15:26:06' where `name` = '张三';
– 4、查询表字段结构
describe table dev_nanmu.user;
– 5、展示字段加密处理 身份证号(字母加数字)加密
if(empty(`user`.`idCardNo`) = 1, '', replaceRegexpOne(`user`.`idCardNo`, '(\\w{6})(\\w{8})(\\w{3})(\\w{1})', '\\1********\\3*')) AS `证件号`
– 6、展示字段加密处理 手机号(纯数字)加密
replaceRegexpOne(`user`.`mobile`, '(\\d{3})(\\d{4})(\\d{4})', '\\1****\\3') AS `联系方式`
– 7、计数 去重后
uniq(if((`user`.`name` ='张三' or `user`.`name` ='李四'),`user`.mobile,null)) as user_count
– 8、计数 不去重
count(if((`user`.`name` ='报价成功' or `user`.`name` ='报价失败'),`user`.mobile,null)) AS user_count
– 9、运算 divide–除法 *–乘法
concat(if(user_valid_count = 0,'0',toString(floor(divide(user_valid_count * 100, user_count),1))),'%') as user_valid_rate
– 10、模糊查询
WHERE like(`user`.`name`, '%三')
– 11、变量设置
and {{userType}}
– 12、日期转换后 与变量范围匹配
[[ and toDate(`user` .`timestamp`) >= {{start}} ]] [[ and toDate(`user` .`timestamp`) <= {{end}} ]]
– 13、字符串切割 保留前两位
substring(`user`.`name`,1,6) `名称`
– 14、求和
sum(if((`user`.`name` ='张三'),`user`.amount,null)) AS amount
– 15、转为日期类型 java long类型clickhouse DateTime64(3, ‘Asia/Shanghai’)类型
toDate(`bcs` .`timestamp`)
– 16、查询阻塞的sql
select * from system.mutations where is_done = 0;
– 17、将阻塞的sql杀掉
KILL MUTATION WHERE database = 'aaa' AND table = 'user';
– 18、分组
group by user.userType,formatDateTime(toDate(`user`.`timestamp`),'%Y-%m')
– 19、排序
order by toDate(`user` .`timestamp`), `bcs`.`userType` desc;
– 20、WHEN…THEN…
WHEN `user`.`userType` = '企业A' THEN '企业' WHEN `user`.`userType` = '企业B' THEN '企业'
相关文章:
19、ClickHouse企业中常见的20种用法
文章目录19、ClickHouse企业中常见的20种用法-- 1、表结构添加字段-- 2、删除语句-- 3、更新语法-- 4、查询表字段结构-- 5、展示字段加密处理 身份证号(字母加数字)加密-- 6、展示字段加密处理 手机号(纯数字)加密-- 7、计数 去重…...
怎么样用香港主机搭建游戏网站
香港是全球主要的互联网骨干节点,拥有质量较高的网络基础设施,在网络速度和稳定性方面表现良好。因此,使用香港主机搭建游戏网站可以使用户在游戏中的体验流畅且基本不会延迟情况。本文将向用户解释如何使用香港主机搭建游戏网站。在搭建游戏…...
重磅!GitLab 提出五大预测,洞见 2023 年 DevSecOps 发展趋势
本文来源:about.gitlab.com 作者:Sandra Gittlen 译者:极狐(GitLab) 市场部内容团队 2023 年,企业会将更多的时间和资源投入到持续的安全左移上,完成从 DevOps 到 DevSecOps 的演变。 GitLab CMSO Ashley Kramer 表示…...
内核模块(传参和依赖)
目录 一、模块传参 二、模块依赖 三、内核空间和用户空间 四、执行流 五、模块编程与应用编程的比较 六、内核接口头文件查询 七、小作业 一、模块传参 module_param(name,type,perm);//将指定的全局变量设置成模块参数 name:全局变量名 type: 使用符号 …...
基础篇:03-SpringCloud工程部署启动
目录 1.工程搭建部署 方案一:完整工程导入 方案二:从零开始搭建 1.工程与module创建 2.数据库导入 3.项目启动 3.1 启动并访问user-service 3.2 启动并访问order-service 4.服务远程调用 时序图说明 服务远程调用实现 注入RestTemplate Res…...
二、产品经理——【需求收集】【需求管理】
0. 学习目标 能够理解并描述需求能够收集并管理需求 1. 如何定义需求 1.1. 需求的定义 原始需求:没有经过任何分析,或者没有经过任何额外解读的需求信息 避免日后纠纷,尽量记录一下原始需求!先记录下来,后面再进行分…...
蓝桥杯stm32 USART 串口接收数据
文章代码使用 HAL 库。 文章目录 前言一、创建 CubeMX 工程:二、 中断接收数据 函数:三、串口接收回调函数实验效果四、接收固定长度的数据。五、串口接收 不定长数据。总结前言 上篇文章是 串口的发送数据,这篇文章接着上次的 讲 串口的接受数据。 一、创建 CubeMX 工程:…...
CellularAutomata元胞向量机-9-生命游戏MATLAB代码分享
主程序:%%Conways life with GUI clf % 清除图形clc, clear% %build the GUI %define the plot button plotbuttonuicontrol(style,pushbutton,... string,Run, ... fontsize,12, ... position,[100,400,50,20], ... callback, run1;); %define the stop button era…...
基于Java+Swing+mysql图书管理系统
基于JavaSwingmysql图书管理系统一、系统介绍二、功能展示1.用户登陆、注册2.类别管理--管理员3.图书管理--管理员4.用户管理--管理员5.图书借还情况查看--管理员7.用户主页8.办理还书--用户9.办理还书三、数据库四、其它系统五、获取源码一、系统介绍 该系统实现了 用户: 图书…...
高通IPQ支持串口转RS485
IPQ60xx支持串口转RS485 1. IPQ6018支持串口转RS4851.1 功能需求1.2 原理1.3 实现方法1.4 如何使用RS485?1.5 修改底层串口驱动来进行控制收发状态,上层应用可以直接当成串口来进行操作1. IPQ6018支持串口转RS485 1.1 功能需求 IPQ60xx/IPQ501x/IPQ80xx项目中使用RS485, 需…...
力扣-组合两个表
大家好,我是空空star,本篇带你了解一道简单的力扣sql练习题。 文章目录前言一、题目:175. 组合两个表二、解题1.left join提交SQL运行结果2.right join提交SQL运行结果总结前言 一、题目:175. 组合两个表 表: Person ----------…...
Linux权限概念
目录 Linux权限的概念 什么是权限 如何去操作权限 设置文件所属角色 设置文件属性 umask 粘滞位 Linux权限的概念 首先我们要了解到,在linux下有两种用户:超级用户(root)和普通用户。超级用户的命令提示符是“#”,普通用户的命令提示…...
备战金三银四,这些无数测试前辈们踩过的坑,在面试中,一定要注意这些
你觉得软件测试师这个职位怎么样?大多数人可能会给出答案:“测试?啊,没有技术含量。无非是看需求、业务手册、设计文档,然后点击功能是否实现。问题是测试中的部署和安装是否存在兼容性问题。” 是的,不可否认&#x…...
注解(加与不加的区别)
起因: 在看到这个文章时,对于注解的作用半知半解,由此,写了个例子,验证注解作用 以Override举例 新建一个父类,取名为textone(类名首字母应该大写) 写一个方法: 再新建一个类,继承…...
小众免费的短视频素材库
推荐5个小众但好用的视频素材网站,免费可商用,视频剪辑、自媒体必备~ 1、菜鸟图库 https://www.sucai999.com/video.html?vNTYxMjky 菜鸟图库网素材非常丰富,网站主要还是以设计素材为主,高清视频素材也很多,像风…...
docker-compose安装SonarQube
前言SonarQube 是一个开源的代码分析平台, 用来持续分析和评测项目源代码的质量。 通过SonarQube我们可以检测出项目中重复代码, 潜在bug, 代码规范,安全性漏洞等问题, 并通过SonarQube web UI展示出来。一、docker-compose配置#v…...
《数字经济全景白皮书》金融篇:五十弦翻塞外声,金融热点领域如何实现增长?
易观分析:《数字经济全景白皮书》浓缩了易观分析对于数字经济各行业经验和数据的积累,并结合数字时代企业的实际业务和未来面临的挑战,以及数字技术的创新突破等因素,最终从数字经济发展大势以及各领域案例入手,帮助企…...
微服务门神-Gateway与Sentinel的集成
目录 引言 概述 集成Sentinel 限流维度 网关集成 Route维度 API分组 精准匹配 前缀匹配 正则匹配 自定义限流返回格式 转视频版 引言 书接上篇:微服务门神-Gateway过滤器Filter,讲完了解Gateway过滤器之后,接下来看下Gateway与…...
查找的基本概念
查找表是由同一类型的数据元素(或记录)构成的集合。根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素或记录。关键字:用来标识一个数据元素(或记录)的某个数据项的值。查找算法的评价指标…...
安装v-router出错
一、场景 1、安装v-router npm i --save vue-router 2、报错: npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: sph20.1.0 npm ERR! Found: vue2.7.14 npm ERR! node_modules/vue npm ERR! v…...
网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
MySQL账号权限管理指南:安全创建账户与精细授权技巧
在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则…...
安卓基础(aar)
重新设置java21的环境,临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的: MyApp/ ├── app/ …...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
