【TIDB】TIDB数据类型详解

2023-11-17

TIDB的数据类型

1 数值类型

1 整数类型
在这里插入图片描述
2 浮点类型
在这里插入图片描述
3 定点类型
decamal(20,6)

2 日期和时间类型

在这里插入图片描述

3 字符串类型

1 CHAR 类型
定长字符串。CHAR 列的长度固定为创建表时声明的长度。当保存 CHAR 值时,不足固定长度的字符串在后面填充空格,以达到指定的长度。M 表示列长度(字符的个数,不是字节的个数)。长度可以为从 0 到 255 的任何值。
VARCHAR 类型
变长字符串。M 表示最大列长度(字符的最大个数)。VARCHAR 的空间占用大小不得超过 65535 字节。在选择 VARCHAR 长度时,应当根据最长的行的大小和使用的字符集确定。
对于不同的字符集,单个字符所占用的空间可能有所不同。以下表格是各个字符集下单个字符占用的字节数,以及 VARCHAR 列长度的取值范围:
在这里插入图片描述
2 TEXT类型
文本串。M 表示最大列长度(字符的最大个数),范围是 0 到 65535。在选择 TEXT 长度时,应当根据最长的行的大小和使用的字符集确定。
TINYTEXT 类型
类似于 TEXT,区别在于最大列长度为 255。
MEDIUMTEXT 类型
类似于 TEXT,区别在于最大列长度为 16,777,215。
LONGTEXT 类型
类似于 TEXT,区别在于最大列长度为 4,294,967,295。
BINARY 类型
类似于 CHAR,区别在于 BINARY 存储的是二进制字符串。
VARBINARY 类型
类似于 VARCHAR,区别在于 VARBINARY 存储的是二进制字符串。
BLOB 类型
二进制大文件。M 表示最大列长度,单位是字节,范围是 0 到 65535。
TINYBLOB 类型
类似于 BLOB,区别在于最大列长度为 255。
MEDIUMBLOB 类型
类似于 BLOB,区别在于最大列长度为 16777215。
LONGBLOB 类型
类似于 BLOB,区别在于最大列长度为 4,294,967,295。
ENUM 类型
枚举类型是一个字符串,它只能有一个值的字符串对象。其值必须是从一个固定集合中选取,这个固定集合在创建表的时候定义,语法是:

ENUM('value1','value2',...) [CHARACTER SET charset_name] [COLLATE collation_name]

3 SET 类型

集合类型是一个包含零个或多个值的字符串,其中每个值必须是从一个固定集合中选取,这个固定集合在创建表的时候定义,语法是:

SET('value1','value2',...) [CHARACTER SET charset_name] [COLLATE collation_name]

4 JSON类型

警告:
当前该功能为实验特性,不建议在生产环境中使用。
JSON 类型可以存储 JSON 这种半结构化的数据,相比于直接将 JSON 存储为字符串,它的好处在于:
使用 Binary 格式进行序列化,对 JSON 的内部字段的查询、解析加快;
多了 JSON 合法性验证的步骤,只有合法的 JSON 文档才可以放入这个字段中;
JSON 字段本身上,并不能创建索引。相反,可以对 JSON 文档中的某个子字段创建索引。例如:

CREATE TABLE city (
    id INT PRIMARY KEY,    
    detail JSON,
    population INT AS (JSON_EXTRACT(detail, '$.population')
    ),    
    index index_name (population)
);
INSERT INTO city (id,detail) VALUES (
    1, '{"name": "Beijing", "population": 100}'
);
SELECT id FROM city WHERE population >= 100;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【TIDB】TIDB数据类型详解 的相关文章

随机推荐

  • 《Android面试题及解析》分享,一文带你搞懂Android多线程Handler

    网易游戏 严格来说我投的是网易互娱 区别于雷火 盘古 后面再说更多区别 走的内推 网易游戏以其笔试难度大著名 这次也不例外 所有的内推都要求参加统一笔试 我记得笔试有几场 我是在第一场 内推的岗位是网易游戏最核心的 游戏研发工程师 地点是杭
  • Call to localhost/127.0.0.1:9000 failed on connection exception错误。

    解决方案 1 首先查看hdfs site xml配置文件 如下面所示
  • nginx+tomcat实现代理访问java web项目

    最近由于部署考试系统 遇到一系列问题 由于Ubuntu上软件安装的混乱 参考的博客过于坑爹 所以环境配置的乱七八糟 在一个午夜 把一根烟抽的透透的 然后开始重装了一次系统 使用的Ubuntu 16 04LTS 由于时间原因一直没有吧我的这个
  • 用acme.sh申请免费ssl证书-let‘s encrypt

    这个是申请泛域名证书 移动端和电脑端直接用这个就可以了 不需要分开申请 安装脚本 curl https get acme sh sh 进入 cd acme sh 看下目录有什么 root csdn ls adl acme sh drwx 8
  • CO_XT_COMPONENTS_DELETE 删除工单组件

    REPORT zdtest6 判断是否有原始组件 如有全删 DATA ls return TYPE coxt bapireturn DATA lt resbkeys TYPE coxt t resbdel lt return TYPE ST
  • RabbitMQ--扩展--03--日志文件,故障恢复,集群迁移,集群监控

    RabbitMQ 扩展 03 日志文件 故障恢复 集群迁移 集群监控 1 RabbitMQ日志查看 如果在使用RabbitMQ 的过程中出现了异常情况 通过查看RabbitMQ 的服务日志可以让你在处理异常的过程中事半功倍 RabbitMQ
  • python基础—字符串操作

    1 字符串 Python内置了一系列的数据类型 其中最主要的内置类型是数值类型 文本序列 字符串 类型 序列 列表 元组和range 类型 集合类型 映射 字典 类型 本章在介绍字符串 列表 元组和range类型共有的通用序列操作方法的基础
  • 常用的相似度计算方法原理及实现

    在数据分析和数据挖掘以及搜索引擎中 我们经常需要知道个体间差异的大小 进而评价个体的相似性和类别 常见的比如数据分析中比如相关分析 数据挖掘中的分类聚类 K Means等 算法 搜索引擎进行物品推荐时 相似度就是比较两个事物的相似性 一般通
  • 笔记本计算机bios设置,联想笔记本BIOS设置详解

    大部分用户朋友遇到系统损坏时 不得不选择重装系统这样简单粗暴快的方式来解决 然而在准备重装时却遇到BIOS设置难题 不得不求助网络上各路大神 却还是没能真正得到帮助 下面快启动小编为大家分享联想笔记本BIOS设置详解 希望能为大家排忧解难
  • 一些杂七杂八的概率统计基础(变分推断所需)

    在开始之前要了解以下这个统计学中背景知识 贝叶斯学派与频率学派 极大似然估计学派 最大的区别就是 贝叶斯学派认为参数 不是一个确定值 而是一个随机变量 且随机变量一定是服从某个分布的 在概率统计中 随机变量 随机数量 变量中的值是随机现象的
  • 莫烦强化学习视频笔记:第五节 5.2 Policy Gradients 算法更新和思维决策

    目录 1 要点 2 算法流程 3 算法代码形式 3 1 算法更新 3 2 思维决策 3 2 1 初始化 3 2 2 建立 Policy 神经网络 3 2 3 选行为 3 2 4 存储回合 3 2 5 学习 1 要点 Policy gradi
  • linux vim/vi 跳转到最后一行 跳转快捷键

    vim vi操作 跳到文本的最后一行 按 G 即 shift g 跳到文本的第一行的第一个字符 按两次 g 跳到当前行的最后一个字符 在当前行按 键 即 shift 4 跳到当前行的第一个字符 在当前行按 0
  • 《数字图像处理》笔记

    目录 第1章 绪论 1 1 图像概述 1 1 1 基本概念和术语 1 1 2 不同波段的图像示例 1 1 3 不同类型的图像示例 1 2 图像工程概述 1 2 1 图像工程的三个层次 1 3 图像表示和显示 1 3 1图像和像素的表示 1
  • Vue使用babel-polyfill兼容IE解决白屏及语法报错

    解决vue elementUI项目使用webpack打包上线后 服务器环境下IE报语法错误及白屏问题 在最近的项目中 在使用webpack打包后发布 有用户反馈使用IE浏览器访问会白屏 这就不能忍受了 经过排查发现 发生这个错误应该是有文件
  • Theos(七):常见问题

    目录 Theos 故障排除 Theos Troubleshooting 空的 THEOS 环境变量或者损坏的符号链接 Empty THEOS or corrupt symlink 缺少 SDK Missing SDK SDK 体积过小 Sm
  • js逆向之浏览器控制台

    js逆向之浏览器控制台 首先介绍一下浏览器控制台的使用 以开发者使用最多的chrome为例 Windows操作系统下的F12键可以打开控制台 mac操作系统下用Fn F12键打开 我们选择平时使用较多的模块进行介绍 2 1 Network
  • 详解HashMap+源码讲解(慎看!!!)

    HashMap 一 Map 1 关于Map的说明 2 Map常用方法说明 二 了解HashMap原理 自己实现 1 常用方法说明 使用 会用就行 1 实现一个HashMap对象 2 调用 put k v 3 调用 get k 2 什么是哈希
  • (jsp和Servlet 功能篇) Servlet 实现文件上传

    在开发过程中用得比较多的上传组件是commons fileupload和japSmartUpload 这两个组件都可以很好的完成文件上传的功能 此例用commons fileupload 这个组件在http jakarta apache o
  • 乐高叉车wedo教案_乐高 WEDO自带12个活动教学参考书.pdf

    活动内容 序号 活动名称 类别 Dancing Birds 1 跳舞的鸟 Spinner 2 疯狂机械 陀螺 Drumming Monkey 3 打鼓的猴子 Alligator 4 鳄鱼 Lion 5 野生动物 狮子 Bird 6 鸟 Go
  • 【TIDB】TIDB数据类型详解

    TIDB的数据类型 文章目录 TIDB的数据类型 1 数值类型 2 日期和时间类型 3 字符串类型 3 SET 类型 4 JSON类型 1 数值类型 1 整数类型 2 浮点类型 3 定点类型 decamal 20 6 2 日期和时间类型 3