php - 在mysql中,使用UNIQUE键与NORMAL键在速度方面具有相同的效果吗?

标签 php mysql unique

例如,我正在执行下一步操作:

SELECT COUNT(id) 
  FROM users 
 WHERE unique_name = 'Wiliam'

// if Wiliam don't exists then...

INSERT INTO users 
   SET unique_name = 'Wiliam'

问题是,每次插入新用户时,我都会进行 SELECT COUNT(id) 检查,无论是否使用唯一键,所以...如果“unique_name”有一个唯一键,它将是比使用普通 key 性能更好?

最佳答案

您的意思是对将要更新的列的唯一约束。读取会更快,插入会慢一点。它仍然比您先检查代码然后插入值要快。只要让 mysql 做它的事情,如果值不唯一,就返回一个错误给你。

关于php - 在mysql中,使用UNIQUE键与NORMAL键在速度方面具有相同的效果吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3374077/

相关文章:

php - 在单个查询中从多个表获取数据 -mysql

php - 使用数据库查询结果填充下拉列表

php - 如何在 PHP 中发出异步 GET 请求?

mysql - 如何添加 session 并添加访问 token 以登录 Node

java - 我怎样才能确保在java中只创建唯一的对象

java - 在 Java 中需要唯一性时有效地返回 List 接口(interface)的实例

java - 从 Java 调用 PHP 方法

mysql - 如何在SQL Where子句中使用其他表字段

mysql - 如果为空则从 MySQL 检索随机数据查找下一个

sql - "no matching unique or primary key for this column-list"。主键确实存在