MySQL创建索引,各种索引的创建及举例
本文介绍在MySQL中创建表的索引,包含创建普通索引,唯一索引,主键索引,全文索引,多列索引等,并举了例子。
假设创建一个zaho_user表:
CREATE TABLE `zaho_user` (`u_id` int(11) NOT NULL AUTO_INCREMENT,`insert_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,`u_name` varchar(20) NOT NULL DEFAULT '' COMMENT '用户名',`u_sex` tinyint(4) NOT NULL DEFAULT '1' COMMENT '性别',`u_desc` varchar(200) NOT NULL DEFAULT '' COMMENT '介绍'
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT '用户表';
1、普通索引
添加INDEX
ALTER TABLE `table_name` ADD INDEX index_name ( `column` )
举例:
将u_name字段设置为索引
ALTER TABLE `zaho_user` ADD INDEX index_username (`u_name`)
2、主键索引
添加PRIMARY KEY
ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )
举例:
将u_id字段设置为主键索引
ALTER TABLE `zaho_user` ADD PRIMARY KEY (`u_id`)
3、唯一索引
添加UNIQUE
ALTER TABLE `table_name` ADD UNIQUE ( `column` )
举例:
将u_name字段设置为索引
ALTER TABLE `zaho_user` ADD UNIQUE (`u_name`)
4、全文索引
添加FULLTEXT
ALTER TABLE `table_name` ADD FULLTEXT ( `column`)
举例:
将u_desc字段设置为索引
ALTER TABLE `zaho_user` ADD FULLTEXT (`u_desc`)
5、如何添加多列索引
ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )
举例:
ALTER TABLE `zaho_user` ADD INDEX index_name ( `u_name`, `u_sex`, `u_desc` )
MySQL创建索引,各种索引的创建及举例相关推荐
- MySQL 学习笔记(18)— 索引的分类、创建、查看、删除等
1. 索引类型 1.1 唯一索引与非唯一索引 唯一索引( UNIQUE )中的索引值必须唯一,可以确保被索引的数据不会重复,从而实现数据的唯一性约束. 非唯一索引允许被索引的字段存在重复值,仅仅用于提 ...
- 高性能mysql:创建高性能的索引
2019独角兽企业重金招聘Python工程师标准>>> 索引是存储引擎用于快速找到记录的一种数据结构. 索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对性能的影响愈 ...
- mysql fnv算法_《高性能MySQL》读书笔记之创建高性能的索引
索引是存储引擎用于快速找到记录的一种数据结构.索引优化是对查询性能优化的最有效手段.索引能够轻易将查询性能提高几个数量级.创建一个最优的索引经常需要重写查询. 5.1索引基础 在MySQL中,存储引擎 ...
- MySQL笔记5:如何创建和删除索引?
MySQL数据库中如何创建和删除索引? 一.创建索引 索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER TABLE来给表增加索引. 1.使用CREA ...
- MySQL查看、创建和删除索引的方法
本文实例讲述了MySQL查看.创建和删除索引的方法.分享给大家供大家参考.具体如下: 1.索引作用 在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率.特别 ...
- mysql主键创建非聚集索引_什么是聚集索引,非聚集索引,索引覆盖,回表,索引下推...
聚集索引 我们先建如下的一张表 CREATE TABLE `student` (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',`name` var ...
- mysql创建非聚集索引_一文看懂聚集索引和非聚集索引的区别
一.深入浅出理解索引结构 实际上,可以把索引理解为一种特殊的目录.微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引.簇集索引)和非聚集索引(nonclu ...
- mysql创建非聚集索引_聚集索引和非聚集索引的区别
作者:riemann riemann.blog.csdn.net/article/details/90324846 一.深入浅出理解索引结构 实际上,可以把索引理解为一种特殊的目录.微软的SQL SE ...
- mysql 排序字段是否需要建索引_MySQL索引详解(优缺点,何时需要/不需要创建索引,索引及sql语句的优化)...
一.什么是索引? 索引是对数据库表中的一列或多列值进行排序的一种结构,使用索引可以快速访问数据库表中的特定信息. 二.索引的作用? 索引相当于图书上的目录,可以根据目录上的页码快速找到所需的内容,提高 ...
- mysql索和使用引的创建_MySQL索引的创建与使用
索引有很多,且按不同的分类方式,又有很多种分类.不同的数据库,对索引的支持情况也不尽相同. 声明:本人主要简单示例MySQL中的单列索引.组合索引的创建与使用. 索引的创建 建表时创建 CREATE ...
最新文章
- [CQOI2007]涂色PAINT
- scala 加载与保存xml文档
- 主流平台应用与游戏的编程语言/工具(图)
- mysql mgr 配置_MySQL5.7 MGR安装配置
- ubuntu安装minisat_minisat 安装指南
- Jersey Restful WebService 接收 JSON 数组 对象
- 基于MicroPython:TPYBoard心率监测器
- Java 8 Stream
- 二分图最大匹配的经典匈牙利算法
- 【渝粤教育】电大中专混凝土结构_1作业 题库
- 统一建模语言——UML
- 饺子播放器使用IJKPlayer播放MP4文件
- java汉字转拼音,pinyin4j简单介绍
- CODEVS 2491 玉蟾宫
- PyQt4对话框(dialog类型介绍)
- 线程池ExecutorService
- 文读懂安防视频监控系统中H.265、SVAC、GB/T28181、ONVIF、PSIA的区别。
- 拼搏别样的未来,中国社科院与美国杜兰大学金融管理硕士项目助力你的人生旅程
- win10在哪找计算机配置,电脑教程:windows10的设置在哪
- ffmpeg framework