gpt4 book ai didi

mysql计算优化

转载 作者:行者123 更新时间:2023-11-29 14:15:19 31 4
gpt4 key购买 nike

我的表中有一个列需要保存“正”和“负”值或“无值”。我必须对数百万行进行求和!经常并将其显示给用户。我的问题是:哪种求和运算会更快。

  1. 如果我用 0 标记“无值”,用 1 标记“正值”,用 -1 标记“负值”
  2. 如果我用 0 标记“无值”,用 1 标记“正值”,用 2 标记“负值”

我的首选选项是 1. 因为它会节省我额外的 php 处理的工作量,并且会立即显示正确的结果。问题是天气在数据库中使用符号(-1,0,+1)会减慢速度,或者就像我不使用符号(0,1,2)一样。请记住,我将有数百万行,并且将定期对它们进行总结。谢谢。

最佳答案

1)因为它会给你直接的结果!

不,只要列的类型定义为有符号整型或实数,符号就不会影响性能...

你的问题应该是关于数据类型,首选int,不太喜欢float,最不喜欢字符串,尽管mysql可以对字符串求和,但转换会很慢。

此外,假设此表仅保存其他两个表之间的一些交叉引用和向上/向下投票,如果您仅删除所有 0 值并仅在投票时插入行,那么速度会快很多。如果您缓存值并使用触发器在投票/取消投票时更新缓存列引用表,则可以使其速度更快。

自动更新投票总数的 fiddle 示例,http://sqlfiddle.com/#!2/044c3/1

关于mysql计算优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12789709/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com