更多时间消耗/ CPU广泛INSERT IGNORE或选择计数(*)

时间:2011-03-26 14:51:30

标签: php mysql sql

我正在使用一个程序,我必须检查数百个变量以查看它们是否已存在于数据库中。它通常需要一段时间才能运行。我正在使用INSERT IGNORE来处理所有变量。我应该更改它以检查它们是否首先存在于数据库中?哪个功能为最终用户增加了更多等待?

在此程序中,大多数插入都是重复的。所以这种情况会经常出现。

在尝试插入之前,删除重复项可能最有意义吗? (我正在使用PHP IMAP库和电子邮件)

1 个答案:

答案 0 :(得分:0)

首先肯定不做SELECT然后INSERT,这完全没有意义。相反,请考虑以下内容;

  • 这些是什么设置?它们真的应该属于数据库还是PHP配置文件?
  • 调查LOAD DATA INTO默认情况下在重复键上使用IGNORE。
  • 一直检查是否真的很麻烦?当然这只会在安装/设置时完成?