表item_info表的item_code字段

[复制链接]
查看11 | 回复2 | 2011-4-2 17:01:06 | 显示全部楼层 |阅读模式
本帖最后由 jinguanding 于 2011-11-9 10:07 编辑
我将表item_info表的item_code字段设置了唯一约束idx_item_info_unq之后,又给item_code字段建立索引 idx_item_code。
但是当我用item_code字段的where条件对item_info表进行查询的时候,用explain下,发现走的是唯一约束idx_item_info_unq,而不是走的索引idx_item_code啊,这是为什么呢?难道唯一约束对象也有索引功能吗?刚学网络工程专业 有点晕
回复

使用道具 举报

千问 | 2011-4-2 17:01:06 | 显示全部楼层
mysql?
1.myisam?innodb?你说的唯一约束可以理解为联合索引,以code去查info的信息,肯定走联合索引。
2.如果你想走code的单独索引,可以 强制使用索引, 不过innodb中走联合索引效率高些,这也是sql分析器选择它的原因
回复

使用道具 举报

千问 | 2011-4-2 17:01:06 | 显示全部楼层
mysql的唯一约束是通过唯一索引实现的,所以也是索引的一种,且比普通索引查找效率更高,肯定用唯一索引的,你属于躲创建了一个索引
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行