ClickHouse 数据类型、函数大小写敏感性
这里写自定义目录标题
SELECT *FROM system.data_type_families
注意:case_insensitive=0 表示大小写敏感。
ClickHouse 的 String 类型、Int 类型、Float 类型、Decimal类型等都是大小写敏感的(case_sensitive=0)。关于ClickHouse大小写敏感,有下面几个注意点。
1.ClickHouse 对于 SQL 语句的解析是大小写敏感的,这意味着 SELECT a 和 SELECT A 表示的语义是不相同的。
2.ClickHouse对关键字大小写不敏感,也就是说SELECT和select都行,不过还是建议遵循规范使用大写。
3.此外,ClickHouse 的一些数据类型也大小写敏感(如表3-1中所示,case_sensitive=0的是大小写敏感的类型),比如:UInt8 不可以写成 uint8,String 不可以写成 string。
4.ClickHouse中大部分的函数也是大小写敏感的。详细的函数清单,可以在ClickHouse Server执行SQL:SELECT * FROM system.functions 查看case_sensitive=0的函数。这些函数都是 ClickHouse 独有的,或者说你在其它关系型数据库中见不到的,比如toDate()函数写成todate()就会报错。但是像 min、max、length、sum、count 等等这些在其它关系型库中也能看到的函数,在 ClickHouse 中则是大小写不敏感的。例如,计算字符串长度的函数length()、Length()都可以返回字符串长度。
5.另外,ClickHouse 中没有 true、false值的布尔类型(Bool),所以,一般用整型(UInt8)表示布尔类型,1 为真,0 为假。
清单表格如下:
| name | case_insensitive | alias_to |
|---|---|---|
| JSON | 1 | |
| Polygon | 0 | |
| Ring | 0 | |
| Point | 0 | |
| SimpleAggregateFunction | 0 | |
| MultiPolygon | 0 | |
| IPv6 | 0 | |
| UInt32 | 0 | |
| IntervalYear | 0 | |
| IntervalQuarter | 0 | |
| IntervalMonth | 0 | |
| Int64 | 0 | |
| IntervalDay | 0 | |
| IntervalHour | 0 | |
| IPv4 | 0 | |
| IntervalSecond | 0 | |
| LowCardinality | 0 | |
| Int16 | 0 | |
| UInt256 | 0 | |
| AggregateFunction | 0 | |
| Nothing | 0 | |
| Decimal256 | 1 | |
| Tuple | 0 | |
| Array | 0 | |
| IntervalMicrosecond | 0 | |
| Bool | 1 | |
| Enum16 | 0 | |
| IntervalMinute | 0 | |
| FixedString | 0 | |
| String | 0 | |
| DateTime | 1 | |
| Object | 0 | |
| Map | 0 | |
| UUID | 0 | |
| Decimal64 | 1 | |
| Nullable | 0 | |
| Enum | 1 | |
| Int32 | 0 | |
| UInt8 | 0 | |
| Date | 1 | |
| Decimal32 | 1 | |
| UInt128 | 0 | |
| Float64 | 0 | |
| Nested | 0 | |
| UInt16 | 0 | |
| IntervalMillisecond | 0 | |
| Int128 | 0 | |
| Decimal128 | 1 | |
| Int8 | 0 | |
| Decimal | 1 | |
| Int256 | 0 | |
| DateTime64 | 1 | |
| Enum8 | 0 | |
| DateTime32 | 1 | |
| Date32 | 1 | |
| IntervalWeek | 0 | |
| UInt64 | 0 | |
| IntervalNanosecond | 0 | |
| Float32 | 0 | |
| bool | 1 | Bool |
| INET6 | 1 | IPv6 |
| INET4 | 1 | IPv4 |
| ENUM | 1 | Enum |
| BINARY | 1 | FixedString |
| GEOMETRY | 1 | String |
| NATIONAL CHAR VARYING | 1 | String |
| BINARY VARYING | 1 | String |
| NCHAR LARGE OBJECT | 1 | String |
| NATIONAL CHARACTER VARYING | 1 | String |
| boolean | 1 | Bool |
| NATIONAL CHARACTER LARGE OBJECT | 1 | String |
| NATIONAL CHARACTER | 1 | String |
| NATIONAL CHAR | 1 | String |
| CHARACTER VARYING | 1 | String |
| LONGBLOB | 1 | String |
| TINYBLOB | 1 | String |
| MEDIUMTEXT | 1 | String |
| TEXT | 1 | String |
| VARCHAR2 | 1 | String |
| CHARACTER LARGE OBJECT | 1 | String |
| DOUBLE PRECISION | 1 | Float64 |
| LONGTEXT | 1 | String |
| NVARCHAR | 1 | String |
| INT1 UNSIGNED | 1 | UInt8 |
| VARCHAR | 1 | String |
| CHAR VARYING | 1 | String |
| MEDIUMBLOB | 1 | String |
| NCHAR | 1 | String |
| VARBINARY | 1 | String |
| CHAR | 1 | String |
| SMALLINT UNSIGNED | 1 | UInt16 |
| TIMESTAMP | 1 | DateTime |
| FIXED | 1 | Decimal |
| TINYTEXT | 1 | String |
| NUMERIC | 1 | Decimal |
| DEC | 1 | Decimal |
| TIME | 1 | Int64 |
| FLOAT | 1 | Float32 |
| SET | 1 | UInt64 |
| TINYINT UNSIGNED | 1 | UInt8 |
| INTEGER UNSIGNED | 1 | UInt32 |
| INT UNSIGNED | 1 | UInt32 |
| CLOB | 1 | String |
| MEDIUMINT UNSIGNED | 1 | UInt32 |
| BLOB | 1 | String |
| REAL | 1 | Float32 |
| SMALLINT | 1 | Int16 |
| INTEGER SIGNED | 1 | Int32 |
| NCHAR VARYING | 1 | String |
| INT SIGNED | 1 | Int32 |
| TINYINT SIGNED | 1 | Int8 |
| BIGINT SIGNED | 1 | Int64 |
| BINARY LARGE OBJECT | 1 | String |
| SMALLINT SIGNED | 1 | Int16 |
| YEAR | 1 | UInt16 |
| MEDIUMINT | 1 | Int32 |
| INTEGER | 1 | Int32 |
| INT1 SIGNED | 1 | Int8 |
| BIT | 1 | UInt64 |
| BIGINT UNSIGNED | 1 | UInt64 |
| BYTEA | 1 | String |
| INT | 1 | Int32 |
| SINGLE | 1 | Float32 |
| MEDIUMINT SIGNED | 1 | Int32 |
| DOUBLE | 1 | Float64 |
| INT1 | 1 | Int8 |
| CHAR LARGE OBJECT | 1 | String |
| TINYINT | 1 | Int8 |
| BIGINT | 1 | Int64 |
| CHARACTER | 1 | String |
| BYTE | 1 | Int8 |
相关文章:
ClickHouse 数据类型、函数大小写敏感性
这里写自定义目录标题SELECT *FROM system.data_type_families注意:case_insensitive0 表示大小写敏感。 ClickHouse 的 String 类型、Int 类型、Float 类型、Decimal类型等都是大小写敏感的(case_sensitive0)。关于ClickHouse大小写敏感&am…...
nodejs基于vue 网上商城购物系统
可定制框架:ssm/Springboot/vue/python/PHP/小程序/安卓均可开发 目录 1 绪论 1 1.1课题背景 1 1.2课题研究现状 1 1.3初步设计方法与实施方案 2 1.4本文研究内容 2 2 系统开发环境 4 2. 3 系统分析 6 3.1系统可行性分析 6 3.1.1经济可行性 6 3.1.2技术可行性 6 3.1.3运行可行…...
掌握MySQL分库分表(一)数据库性能优化思路、分库分表优缺点
文章目录MySQL数据库性能优化思路【面试题】不分库分表软优化硬优化分库分表结论分库分表能解决的问题解决数据库本身瓶颈连接数解决系统本身IO、CPU瓶颈分库分表带来的问题问题⼀ 跨节点数据库Join关联查询问题二 分库操作带来的分布式事务问题问题三 执行的SQL排序、翻页、函…...
何为小亚细亚?
一、小亚细亚安纳托利亚(Anatolia),又名小亚细亚或西亚美尼亚,是亚洲西南部的一个半岛,隶属于土耳其。安纳托利亚半岛,北临黑海,西临爱琴海,南濒地中海,东接亚美尼亚高原…...
【mircopython】ESP32配置与烧录版本
下载ESP32的Micropython固件 官方连接https://www.micropython.org/download/esp32/ 看了下描述,上面的是IDF4.x系列编译,下面是IDF3.x系列编译,我们默认选新的 下载安装CP2102驱动 CP210x USB to UART Bridge VCP Drivers - Silicon Labs…...
Yaml:通过extrac进行传参,关联---接口关联封装(基于一个独立YAML的文件)
一:在common包中,封装一个yaml_util的工具包 1. 将获取到的数据,写入到extrac.yaml文件中,通过data def write_extract_yaml(data): 2. 需要用到该参数时,读取extrac.yaml文件中,由于会有多个参数&#x…...
vue - vue中对Vant日历组件(calendar)的二次封装
vue中对vant日历选择器组件实现的的二次封装;主要实现功能如下: 主要功能: 日期区间选择(基本);自定义选择器的底部按钮,添加清除时间操作(slot插槽);指定默认选中的日期…...
详解C++的类型转换
文章目录前言一、C语言中的类型转换二、为什么C需要四种转换三、C强制类型转换3.1 static_cast3.2 reinterpret_cast3.3 const_cast3.4 dynamic_cast四、RTTI总结前言 在C语言的类型转换有一个非常大的坑,有好多悄悄地转换,有时候把我们转换的就蒙了,因为C要兼容C语言,所以C就…...
NLP文本自动生成介绍及Char-RNN中文文本自动生成训练demo
前言 文本自动生成是自然语言处理领域的一个重要研究方向,实现文本自动生成也是人工智能走向成熟的一个重要标志。文本自动生成技术极具应用前景。 例如,文本自动生成技术可以应用于智能问答与对话、机器翻译等系统,实现更加智能和自然的人机…...
Teradata 离场,企业数据分析平台如何应对变革?
近日大数据分析和数仓软件巨头 Teradata(TD)宣布基于中国商业环境的评估,退出在中国的直接运营。TD 是全球最大的专注于大数据分析、数仓和整合营销管理解决方案的供应商之一,其早在 1997 年就进入中国,巅峰期占据半数…...
QWebEngineView-官翻
文章目录特性公共成员函数重实现公共成员函数公有槽函数信号静态公有成员函数保护成员函数重实现保护成员函数额外继承成员详细描述特性文档编制成员函数文档QWebEngineView::**QWebEngineView**([QWidget](../../W/QWidget.md) **parent* Q_NULLPTR)[virtual] QWebEngineView…...
网络安全高级攻击
对分类器的高层次攻击可以分为以下三种类型:对抗性输入:这是专门设计的输入,旨在确保被误分类,以躲避检测。对抗性输入包含专门用来躲避防病毒程序的恶意文档和试图逃避垃圾邮件过滤器的电子邮件。数据中毒攻击:这涉及…...
优思学院:六西格玛中的水平对比方法是什么?
水平对比,就是比较不同事物之间的差异。 这个概念在六西格玛管理中也很重要,也就是我们经常说的标杆管理,经常被用来寻找行业中最好的做法,以帮助组织改进自身的绩效。 在六西格玛管理中,水平对比有三种常见的应用方式…...
UVa 690 Pipeline Scheduling 流水线调度 二进制表示状态 DFS 剪枝
题目链接:Pipeline Scheduling 题目描述: 给定一张5n(1≤n≤20)5\times n(1\le n\le20)5n(1≤n≤20)的资源需求表,第iii行第jjj列的值为’X’表示进程在jjj时刻需要使用使用资源iii,如果为’.则表示不需要使用。你的任务是安排十个…...
【ArcGIS Pro二次开发】(6):工程(Project)的基本操作
在ArcGIS Pro中我们对工程的基本操作一般包括打开、新建、保存等。下面演示在二次开发中如何用代码进行以上操作。 新建一个项目,命名为【ProjectManager】,添加8个按钮,命名为【CreateEmptyProject、CreateProjectByDefault、OpenExProjest…...
Qt OpenGL(四十)——Qt OpenGL 核心模式-雷达扫描效果
提示:本系列文章的索引目录在下面文章的链接里(点击下面可以跳转查看): Qt OpenGL 核心模式版本文章目录 Qt OpenGL(四十)——Qt OpenGL 核心模式-雷达扫描效果 一、场景 上一篇文章介绍了在雷达坐标系中绘制飞行的飞机,其实雷达坐标系应该还有一个效果,就是扫描的效…...
群智能优化算法求解标准测试函数F1~F23之种群动态分布图(视频)
群智能优化算法求解标准测试函数F1的种群动态分布图群智能优化算法求解标准测试函数F2的种群动态分布图群智能优化算法求解标准测试函数F3的种群动态分布图群智能优化算法求解标准测试函数F4的种群动态分布图群智能优化算法求解标准测试函数F5的种群动态分布图群智能优化算法求…...
vue-axios封装与使用
一、简介 Axios 是一个基于 promise 网络请求库,作用于node.js 和浏览器中。 这是一个使用率很高的前端网络请求库,几乎所有的前端项目都会使用,本文主要介绍的是如何在vue项目中使用axios,并对其进行全面的封装。 注意&#x…...
重要节点排序方法
文章目录研究背景提前约定基于节点近邻的排序方法度中心性(degree centrality, DC)半局部中心性(semilocal centrality, SLC)k-壳分解法基于路径排序的方法离心中心性 (Eccentricity, ECC)接近中心性 (closeness centrality, CC)K…...
【2.20】动态规划 +项目 + 存储引擎
01背包问题 现有一容量为w的背包,有3个物品,每个物品重量不同,价值不同,问,怎样装才能价值最大化? 明确dp数组含义和下标含义:dp[j]表示当前背包的最大价值。j表示背包容量。递推公式…...
国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
线程同步:确保多线程程序的安全与高效!
全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分ÿ…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
