mysql可以设置联合唯一索引,方法:使用“Alter table 表名 add UNIQUE index 索引名 (字段1,字段2)”语句来设置,它会删除重复的记录,保留一条,然后建立联合唯一索引。

联合唯一索引

项目需要将某个表的某两个字段添加唯一索引,保证这两个字段的值不能同时重复。Alter table 表名 add UNIQUE index 索引名 (字段1,字段2)

当表中已经存在重复数据的时候,添加的时候就会报错,这时候需要将数据去重。

1.先查出来重复的数据SELECT * FROM (SELECT 字段,COUNT(1) AS num FROM 表 GROUP BY 字段) temp WHERE num >

手动删除。

2.Alter ignore table 表名 add UNIQUE index 索引名 (字段1,字段2)

它会删除重复的记录(会保留一条),然后建立唯一索引,高效而且人性化(未测试)。

还查到了些相关的内容:

1、添加PRIMARY KEY(主键索引)

ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )

2、添加UNIQUE(唯一索引)

ALTER TABLE `table_name` ADD UNIQUE ( `column` )

3、添加INDEX(普通索引)ALTER TABLE `table_name` ADD INDEX index_name ( `column` )

4、添加FULLTEXT(全文索引)mysql>ALTER TABLE `table_name` ADD FULLTEXT ( `column`)

5、添加多列索引ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )

推荐教程:mysql视频教程

mysql联合唯一索引可以有多个吗_mysql可以设置联合唯一索引吗?相关推荐

  1. mysql中索引创建 查看和删除语句_MySQL如何创建和删除索引?

    mysql索引,mysql创建索引,mysql删除索引 1.在关系数据库中,索引是一种与表有关的数据库结构,它可以使对应于表的SQL语句执行得更快.今天就简单地给大家演示一下mysql中索引的创建,查 ...

  2. mysql教程联合索引_MySQL中的联合索引学习教程

    联合索引又叫复合索引.对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分.例如索引是key index (a,b,c). 可以支持a | a,b| ...

  3. mysql的学习要点_MySQL中的联合索引的学习要点总结

    MySQL中的联合索引的学习要点总结 联合索引又叫复合索引.对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分.例如索引是key index (a ...

  4. mysql联合索引案例_mysql多个联合索引的案例分析

    mysql多个联合索引的案例分析 发布时间:2020-11-23 14:54:29 来源:亿速云 阅读:61 作者:小新 小编给大家分享一下mysql多个联合索引的案例分析,相信大部分人都还不怎么了解 ...

  5. mysql主键和唯一索引_mysql 主键和唯一索引的区别

    主键是一种约束,唯一索引是一种索引,两者在本质上是不同的. 主键创建后一定包含一个唯一性索引,唯一性索引并不一定就是主键. 唯一性索引列允许空值,而主键列不允许为空值. 主键列在创建时,已经默认为非空 ...

  6. mysql 排序字段是否需要建索引_MySQL索引详解(优缺点,何时需要/不需要创建索引,索引及sql语句的优化)...

    一.什么是索引? 索引是对数据库表中的一列或多列值进行排序的一种结构,使用索引可以快速访问数据库表中的特定信息. 二.索引的作用? 索引相当于图书上的目录,可以根据目录上的页码快速找到所需的内容,提高 ...

  7. mysql索引与约束有什么关系_MySQL 约束与索引

    约束 MYSQL不支持非主键的聚集索引. PRIMARY KEY 不可空不可重复,在一个表里可以定义联合主键: primary key = unique + not null PRIMARY KEY是 ...

  8. 作为唯一索引_Mysql什么情况下不走索引?

    本文基于Mysql5.7版本和InnoDB存储引擎. 1.InnoDB索引组织表 在InnoDB引擎中,表都是按照主键顺序组织存放的,这种存放方式的表称为索引组织表.InnoDB存储引擎中的表,都有主 ...

  9. mysql 建表时建立索引_mysql 分享建表和索引的几点规范

    一. MySQL建表,字段需设置为非空,需设置字段默认值. 二. MySQL建表,字段需NULL时,需设置字段默认值,默认值不为NULL. 三. MySQL建表,如果字段等价于外键,应在该字段加索引. ...

最新文章

  1. mysql协议解析器_mysql协议解析
  2. docker挂载NVIDIA显卡
  3. sql server 存储过程 SET NOCOUNT ON?
  4. 探索 ConcurrentHashMap 高并发性的实现机制--转
  5. tomcat启动报:No Spring WebApplicationInitializer types detected on classpath
  6. html 查找添加联系人,使用phonegap查找联系人的实现方法
  7. 在建工地扬尘在线监控系统推荐_vocs在线监控系统安装的法规依据
  8. 如何查看服务器当前的负载信息
  9. maven3.6.3 配置环境变量_JDK1.8简单配置环境变量---两步曲
  10. Gopher一定要会的代码自动化检查
  11. 电商并没有给我们创造一个就业机会
  12. 公司内多个公众号实现账号互通(UnionID机制处理)
  13. android下拉分页加载,Android LoadMoreListView+SwipeRefreshLayout(分页下拉)基本结构
  14. txt文本阅读器 html,TxT小说阅读器(TxTReader)
  15. 录音文件下载_如何免费下载受版权保护的收费音乐
  16. 蒲公英快速查询苹果手机UDID方法
  17. 三星芯片制造深陷良率泥沼
  18. dwm.exe(桌面窗口管理器)占用内存过大解决办法
  19. 虚幻4渲染编程(光线追踪篇)【第一卷:光线追踪篇开篇综述】
  20. 游戏领域的“抄袭”与“借鉴”之分,无耻与致敬仅有一步之遥

热门文章

  1. 期末复习【计算机组成原理】
  2. 人工智能的三个发展阶段
  3. Python制作塔防小游戏
  4. 十七、网上商城项目(3)
  5. 2013移动开发工具盘点:最火原型设计工具
  6. NC 工具的使用教程
  7. CGI 学习笔记 HelloCGI
  8. 阿拉伯世界的历史现状与前景2019尔雅满分答案
  9. 基于JSP的在线学习网站 的设计与实现
  10. ISO 639-1语言列表