MySQL使用默认值与在查询中设置值是不是有任何性能差异?

Posted

技术标签:

【中文标题】MySQL使用默认值与在查询中设置值是不是有任何性能差异?【英文标题】:Is there any performance difference in MySQL using default vs setting the value in the query?MySQL使用默认值与在查询中设置值是否有任何性能差异? 【发布时间】:2014-11-04 06:46:15 【问题描述】:

我想知道是为表设置默认值还是在查询性能方面设置值更好?或者有什么不同?

例如,对时间戳字段使用默认值 CURRENT_TIMESTAMP。与没有默认值并在 INSERT INTO 查询中设置它。

【问题讨论】:

【参考方案1】:

好吧,我认为默认值可能会更快,因为当您首先向数据库发送查询时,它会解析查询和数据以检查它是否适合列。拥有更多字段意味着更多检查,它还将检查正确的时间戳值。但是使用默认值,它会检查,如果一切正常,就从系统获取日期时间并继续。

顺便说一句,这个优化太小了……也许通过一些测试你可以看到它们有多大的不同。

【讨论】:

以上是关于MySQL使用默认值与在查询中设置值是不是有任何性能差异?的主要内容,如果未能解决你的问题,请参考以下文章

SQL - 使用常量值与参数的任何性能差异?

JS/jQuery:使用下拉框在另一个字段中设置值,是不是正在更改以前的字段?

如何在mysql,php的单个查询中设置与自动递增ID值相同的任何列值[重复]

在 CoreData 中设置值会使应用程序崩溃

从对象 php 的 jquery 数组中设置值?

加载商店后如何在网格中设置值? EXTJS3