首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL 常见索引类型介绍

MySQL 主要索引类型有如下几种: 1.主键索引 2.唯一索引 3.普通索引 4.空间索引 5.全文索引 假设有如下一张表 CREATE TABLE `t1` ( `id` bigint unsigned...聚簇索引默认是主键,如果表没有定义主键,InnoDB 会选择一个非空唯一索引代替。如果没有,InnoDB 会定义一个隐藏的_rowid 列来作为聚簇索引。...如果是组合索引,则列值的组合必须唯一 # 创建唯一索引 mysql> alter table t1 add unique idx_u1(`u1`); # 查看创建的索引关键词 UNIQUE KEY `...order by u1 desc limit 3; ERROR 1176 (42000): Key 'idx_u1' doesn't exist in table 't1' 空间索引 空间索引是对空间数据类型的字段建立的索引...,MYSQL使用SPATIAL关键字进行扩展,使其能够在空间数据类型的语法上创建空间索引。

68830
您找到你想要的搜索结果了吗?
是的
没有找到

3、MySQL的数据类型介绍

上一章节内容主要介绍了一些MySQL对表和库的增删改查操作,对于上一章对与表字段的一些定义进行说明,本章主要介绍关于数据库类型的一些定义。...一、概述: MySQL数据库的数据大致可以分为以下几类,从而实现数据库在操作的时候对不同类型的处理。...4、定义数据类型实际是定义表的列 二、数据库类型的分类 数据库的分类可以分为数值类型,字符型,日期型、文本型TEXT及复合型。...) row num int (整型默认为11个字节) bigint(大整型) Population 举例: 创建表包含以上类型,且每个字段均输入99999999数值,并查看 mysql> ...> 三、字符串类型 3.1字符串类型比较 char(n) n:存储固定长度,在括号自定长度其最大值为255; varchar(n) n:存储变长,在括号内指定最大长度其最大值为255,如果大于255

79210

Mysql的列类型

Mysql的列类型: 数字类型 字符串类型 布尔型 日期时间类型 数字类型: 1个字节=8比特,但数字里有一个比特用于符号占位 TINYINT 占用1个字节,表示范围:-128~127 SMALLINT...政治面貌:只能取党员、团员、群众 高考成绩:FLOADT(4,1) 取值有规则 电话、手机号码:有格式要求 用户名:必须唯一 登录密码:密码不能为空字符串且长度不能少于N位 员工所在部门:可取值必须在部门表存在过...主键约束: 列名 类型 PRIMARY KEY 声明为“主键”的列上不能出现NULL值,且不能重复,如学生编号、商品编号。...表中所有的记录行会自动按照主键列上的值进行排序。 一个表至多只能有一个主键列。 唯一约束: 列名 类型 UNIQUE 声明为“唯一”的列上不能出现重复值,但可以出现多个NULL值。...非空约束: 列名 类型 NOT NULL 声明为“非空”约束的列上不能出现NULL,但可以重复 检查约束对于Mysql不支持 默认值约束 列名 类型 Default 值 声明为“默认值”约束的列上没有值的将会默认采用默认设置的值

6.4K20

MySQLundo日志介绍

MySQLundo日志介绍 概念介绍: 我们知道,MySQL的redo日志记录了事务的行为,在服务器宕机的时候,可以通过重做事务来达到恢复数据的目的,然而,有的时候,事务还有回滚的需求,也就是说...存储位置: 我们还知道,redo日志一般情况下放在redo日志文件,也就是常说的ib_log,而undo日志存放在数据库内部的一个"段",这个概念,我们在8月21号的文章中有讲过,忘记的同学可以回去看看...在这个过程,共享表空间的大小并不会发生改变。除此之外,undo日志会将delete操作转化为insert操作,update操作转化为反向的update操作。...到底什么时候删除取决于mysql的purge线程,这样做是为了避免其他的事务需要通过undo日志来得到这条记录之前的版本。...当然,我们可以通过show engine innodb status来查看链表undo log 的数量,这里不做演示了。

1.7K20

MySQL 的日期时间类型

日期时间类型包含以下几种数据类型: DATE TIME DATETIME TIMESTAMP YEAR 各类型都有具体的取值范围,超出或非法的其他值时,MySQL 会回退到 0。...TIMESTAMP 类型是个例外,给它设置一个超出范围的值时,将保存上该类型允许的最大值。...通过设置 MySQL 相关参数,日期类型可保存原本非法的值,比如开启 ALLOW_INVALID_DATES 设置项时,可设置日期类型保存一个 2009-11-31 值,但正常情况下我们知道 11 月哪来什么...所以 MySQL 是支持将月日设置成 0,比如 2019-00-00。但这种情况下就无法从日期相关的操作获得到准确的结果,比如使用 DATE_SUB() 或 DATE_ADD() 函数时。...比如给一个日期格式的列设置 10:11:12,虽然这个值看起来像时间类型,但还是可以正确在被解析成目标列的格式,即日期。

6.7K20

MySQL的数据类型

MySQL定义数据字段的类型对数据库的优化是非常重要,它支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 数值类型 ? 日期和时间类型 ? 字符串类型 ?...CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同,它们的最大长度和是否尾部空格被保留等方面也不同,在存储或检索过程不进行大小写转换。...另外,CHAR(n) 和 VARCHAR(n) 括号 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。...BLOB 是一个二进制大对象,可以容纳可变数量的数据,上表所示中有共有4种类型,它们区别在于可容纳存储范围不同。...TEXT 用于存文本数据,对应BLOB的4种类型,4种类型存储的最大长度不同,可根据实际情况选择。

2.8K20

详细介绍mysql索引类型:FULLTEXT、NORMAL、SPATIAL、UNIQUE

mysql索引类型:FULLTEXT、NORMAL、SPATIAL、UNIQUE的详细介绍 Normal 普通索引 Unique 唯一索引 Full Text 全文索引 SPATIAL 空间索引 btree...mysql创建Unique约束 Full Text 全文索引 表示全文收索,在检索长文本的时候,效果最好,短文本建议使用Index,但是在检索的时候数据量比较大的时候,现将数据放入一个没有全局索引的表...SPATIAL 空间索引 空间索引是对空间数据类型的字段建立的索引,MYSQL的空间数据类型有4种,分别是GEOMETRY、POINT、LINESTRING、POLYGON。...MYSQL使用SPATIAL关键字进行扩展,使得能够用于创建正规索引类型的语法创建空间索引。...在实际操作过程,应该选取表哪些字段作为索引?

1.6K20

MySQL的数据类型_js的数据类型

MySQL数据类型精讲 1.MySQL的数据类型 常见数据类型的属性,如下: 2.整数类型 2.1 类型介绍 整数类型一共有 5 种,包括 TINYINT、SMALLINT、MEDIUMINT、INT...3.浮点类型 3.1类型介绍 浮点数和定点数类型的特点是可以 处理小数 ,你可以把整数看成小数的一个特例。因此,浮点数和定点数的使用场景,比整数大多了。...那么,MySQL 有没有精准的数据类型呢?当然有,这就是定点数类型: DECIMAL 。 4.定点数类型 4.1 类型介绍 MySQL的定点数类型只有 DECIMAL 一种类型。...6.日期与时间类型 日期与时间是重要的信息,在我们的系统,几乎所有的数据表都用得到。原因是客户需要知道数据的时间标签,从而进行数据查询、统计和处理。...在MySQL 8.x版本,JSON类型提供了可以进行自动验证的JSON文档和优化的存储结构,使得在MySQL存储和读取JSON类型的数据更加方便和高效。

6.7K20
领券