mysql - 琐碎算术计算的数据库优化

标签 mysql optimization

我有一个计算,我必须查询数据库。类似于:

CM / 100  * CV / 100 * CL / 100

我想知道这样查询是否会更好:

CM * CV * CL / 1000000

或者数据库会为我做这个优化吗?

(我更喜欢使用第一个 - 因为它对读者来说更清楚 - 但我想知道这是否会影响性能......)

最佳答案

不,这种优化不是由 MySQL 完成的(如果任何其他数据库会这样做,我实际上会感到惊讶)。

我也怀疑,通过这种“优化”,您是否会获得显着的性能改进,因此我的建议是在其他地方进行优化。按照您喜欢的方式编写。

您可以自行检查

EXPLAIN EXTENDED
SELECT ...

结果将是一个计划,MySQL 将如何执行查询(如果可以并且将使用索引,等等)。之后你可以做

SHOW WARNINGS;

在结果中您将看到查询、优化器如何转换它以及 MySQL 将如何使用它。

关于mysql - 琐碎算术计算的数据库优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25970230/

相关文章:

Java PreparedStatement 和 ON DUPLICATE KEY UPDATE : how do I know whether row was inserted or updated?

mysql - 从首先返回的全文搜索中获取精确匹配?

java - 在循环中使用 if 语句的最优化方法是什么?

r - 在 R 中为组的每个成员分配值的快速方法

mysql - 表之间的区别和变化是什么?

mysql - 查找从提交申请到创建订单的平均时间

c - 在 x86 上将 float 转换为 int 的最快方法是什么

MYSQL查询优化连接4张表

python - Gekko 和中间变量

mysql - 全文 MYSQL 查询