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进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
