数据库查询效率

时间:2015-12-08 23:16:06

标签: mysql

我的老板让我创建一个数据库表,用各种参数跟踪我们的一些库存。它的意思是作为一个每半个小时左右运行一次的cron作业来实现,但是调度部分并不重要,因为我们已经讨论过我们以后会处理它。 / p>

我想知道的是,每次调用脚本并重新填充脚本时,只删除表中的所有内容,或者检查每条记录以确定是否进行了任何更改,效率是否更高并相应地更新每个条目。它做更容易来做前者,但考虑到我们有超过700个单独的记录要跟踪,我不知道这样做的时间是否会产生服务器上的巨大负载。该脚本是用PHP编写的。

2 个答案:

答案 0 :(得分:3)

700条记录是性能问题极少的记录。甚至不要考虑它,做哪个更容易。

但是如果它是你所追求的性能,更新行比插入行要慢(特别是如果你不期望任何生成的键,那么插入是对数据库的单向操作,而不是往返于和来自数据库,)和TRUNCATE TABLE往往比DELETE * FROM更快。

答案 1 :(得分:0)

如果你有关于SQL DB的正确库存的ID,那么更新它们是一个好习惯,因为理论上你的ID会耗尽(溢出)。

另一种方法是使用像MongoDB这样的NoSQL数据库,只需使用现有ID更新给定json主体的数据库,数据库本身就可以自行解决。