作为实现半衰期行为的一部分,我需要每隔几天在大约十万行上执行x = x - x / 128。 tsql是否足够智能,可以有效地进行128除法(作为位移),或者除以130的效率是否同样有效?
如果tsql不够聪明,我能做些什么才能让它更有效率?
答案 0 :(得分:2)
十万行是不足以使分频操作和换档操作之间的性能差异甚至可能是可测量的。特别是如果你每隔几天就要做一次。最好花时间担心其他问题。
答案 1 :(得分:0)
您可以使用带有PERSISTED
标志的计算列来确保这些值是物理存储的,而不是每次显示时都重新计算。这可能(可能取决于您的具体情况)更有效率。
答案 2 :(得分:0)
更有可能你会遇到整数数学的问题。我不知道你的x值是多少,但如果它们也是整数,你想要除以128.0;你想要将答案四舍五入到最接近的整数。